Sha256: 6dec7509d708397b5b84336402ac26e3e1ae386bff2095b89974477f8e19f5c3

Contents?: true

Size: 903 Bytes

Versions: 1

Compression:

Stored size: 903 Bytes

Contents

class MoveUserIdToPost < ActiveRecord::Migration
  class Monologue::PostsRevision < ActiveRecord::Base
    attr_accessible :title, :content, :url, :published_at, :post_id
  end

  class Monologue::Post < ActiveRecord::Base
    has_many :posts_revisions
  end

  def up
    add_column :monologue_posts, :user_id, :integer
    Monologue::Post.reset_column_information
    Monologue::Post.all.each do |post|
      post.user_id = post.posts_revisions.first.user_id
      post.save(validate: false)
    end
    remove_column :monologue_posts_revisions, :user_id
  end

  def down
    add_column :monologue_posts_revisions, :user_id, :integer
    Monologue::Post.reset_column_information
    Monologue::Post.all.each do |post|
      post.posts_revisions.each do |revision|
        revision.user_id = post.user_id
        revision.save!
      end
    end
    remove_column :monologue_posts, :user_id
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
monologue-0.3.0 db/migrate/20130108123111_move_user_id_to_post.rb