20 lines
850 B
Ruby
20 lines
850 B
Ruby
class MigrateSettings < ActiveRecord::Migration
|
|
def up
|
|
remove_index :settings, [:target_type, :target_id, :var]
|
|
rename_column :settings, :target_id, :thing_id
|
|
rename_column :settings, :target_type, :thing_type
|
|
change_column :settings, :thing_id, :integer, null: true, default: nil
|
|
change_column :settings, :thing_type, :string, null: true, default: nil
|
|
add_index :settings, [:thing_type, :thing_id, :var], unique: true
|
|
end
|
|
|
|
def down
|
|
remove_index :settings, [:thing_type, :thing_id, :var]
|
|
rename_column :settings, :thing_id, :target_id
|
|
rename_column :settings, :thing_type, :target_type
|
|
change_column :settings, :target_id, :integer, null: false
|
|
change_column :settings, :target_type, :string, null: false, default: ''
|
|
add_index :settings, [:target_type, :target_id, :var], unique: true
|
|
end
|
|
end
|