Fix Rails/BulkChangeTable
cop (#26890)
This commit is contained in:
parent
0c4e7c06dc
commit
c501d626e8
31 changed files with 208 additions and 107 deletions
|
@ -2,20 +2,24 @@
|
|||
|
||||
class MigrateSettings < ActiveRecord::Migration[4.2]
|
||||
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
|
||||
change_table(:settings, bulk: true) do |t|
|
||||
t.remove_index [:target_type, :target_id, :var]
|
||||
t.rename :target_id, :thing_id
|
||||
t.rename :target_type, :thing_type
|
||||
t.change :thing_id, :integer, null: true, default: nil
|
||||
t.change :thing_type, :string, null: true, default: nil
|
||||
t.index [:thing_type, :thing_id, :var], unique: true
|
||||
end
|
||||
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
|
||||
change_table(:settings, bulk: true) do |t|
|
||||
t.remove_index [:thing_type, :thing_id, :var]
|
||||
t.rename :thing_id, :target_id
|
||||
t.rename :thing_type, :target_type
|
||||
t.column :target_id, :integer, null: false
|
||||
t.column :target_type, :string, null: false, default: ''
|
||||
t.index [:target_type, :target_id, :var], unique: true
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue