Sha256: 26af794808fb6cfeb3a1edbbdf961439d41d6a19454037821b5805bbe814aaa1

Contents?: true

Size: 835 Bytes

Versions: 3

Compression:

Stored size: 835 Bytes

Contents

class MoveUserIdToPost < ActiveRecord::Migration
  class Monologue::PostsRevision < ActiveRecord::Base
  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

3 entries across 3 versions & 1 rubygems

Version Path
monologue-0.5.0 db/migrate/20130108123111_move_user_id_to_post.rb
monologue-0.4.1 db/migrate/20130108123111_move_user_id_to_post.rb
monologue-0.4.0 db/migrate/20130108123111_move_user_id_to_post.rb