if for migration

This commit is contained in:
Dmitriy Zaporozhets 2012-12-18 21:06:29 +02:00
parent 552c6d4598
commit 96af55bb85

View file

@ -3,7 +3,13 @@ class MoveNoteableCommitToOwnField < ActiveRecord::Migration
add_column :notes, :commit_id, :string, null: true
add_column :notes, :new_noteable_id, :integer, null: true
Note.where(noteable_type: 'Commit').update_all('commit_id = noteable_id')
Note.where("noteable_type != 'Commit'").update_all('new_noteable_id = CAST (noteable_id AS INTEGER)')
if ActiveRecord::Base.connection.adapter_name == 'PostgreSQL'
Note.where("noteable_type != 'Commit'").update_all('new_noteable_id = CAST (noteable_id AS INTEGER)')
else
Note.where("noteable_type != 'Commit'").update_all('new_noteable_id = noteable_id')
end
remove_column :notes, :noteable_id
rename_column :notes, :new_noteable_id, :noteable_id
end