Fil*_*uzi 6 ruby database migration ruby-on-rails foreign-keys
我已经以这种方式创建了数据库中的现有外键:
class CreateUser < ActiveRecord::Migration
def change
create_table do ... end
add_foreign_key :users, :admins, column: :admin_id
end
end
Run Code Online (Sandbox Code Playgroud)
但忘了添加on_delete: :nullify.迁移已被推送并用于生产.我想添加新的迁移,这将为此PK约束添加cascale删除.怎么实现呢?
您可以在下次迁移中删除并添加外键:
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
Run Code Online (Sandbox Code Playgroud)