假设我有一个 Post
模型:
class Post < ActiveRecord::Base
belongs_to :category
end
和一个
Category
模型:class Category < ActiveRecord::Base
has_many: :posts
end
我可以用
dependent: :destroy
在删除特定类别时删除所有帖子,但我不想删除帖子,我只想通过设置 category_id
来删除与该特定类别的关联那些帖子的专栏到nil
.是否有一种开箱即用的“Rails 方式”,或者我是否需要使用一些回调?
最佳答案
使用依赖::无效
根据 Rails 指南:
:nullify causes the foreign key to be set to NULL. Callbacks are not executed.
所以你会有:
class Category < ActiveRecord::Base
has_many: :posts,
dependent: :nullify
end
关于ruby-on-rails - 删除所有者时从记录中删除引用 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35171014/