我已经在数据库中创建了外键,创建方式如下:
class CreateUser < ActiveRecord::Migration
def change
create_table do ... end
add_foreign_key :users, :admins, column: :admin_id
end
end
但忘记添加on_delete: :nullify
。迁移已经推送并在生产中使用。我想添加一个新的迁移,该迁移将为此主键约束添加级联删除。如何实现?
我已经在数据库中创建了外键,创建方式如下:
class CreateUser < ActiveRecord::Migration
def change
create_table do ... end
add_foreign_key :users, :admins, column: :admin_id
end
end
但忘记添加on_delete: :nullify
。迁移已经推送并在生产中使用。我想添加一个新的迁移,该迁移将为此主键约束添加级联删除。如何实现?
您可以在下一次迁移中删除和添加外键:
class ChangeForgeinKeyOnUsersTable < ActiveRecord::Migration[5.0]
def change
remove_foreign_key :users, column: :admin_id
add_foreign_key :users, :admins, column: :admin_id, on_delete: :nullify
end
end