22 lines
802 B
Ruby
22 lines
802 B
Ruby
class AddFeaturedToForumThreads < ActiveRecord::Migration
|
|
def up
|
|
add_column :forum_threads, :featured_user1_id, :integer, null: true
|
|
add_column :forum_threads, :featured_user2_id, :integer, null: true
|
|
add_column :forum_threads, :featured_user3_id, :integer, null: true
|
|
|
|
# Migrate old threads
|
|
ForumThread.all.each do |forum_thread|
|
|
posts_count = Post.where(forum_thread_id: forum_thread.id).group(:user_id).order('count_all desc').limit(3).count
|
|
posts_count.keys.each_with_index {|user_id, i| forum_thread.send("featured_user#{i+1}_id=", user_id) }
|
|
forum_thread.save
|
|
end
|
|
|
|
end
|
|
|
|
def down
|
|
remove_column :forum_threads, :featured_user1_id
|
|
remove_column :forum_threads, :featured_user2_id
|
|
remove_column :forum_threads, :featured_user3_id
|
|
end
|
|
end
|