【发布时间】:2014-02-10 10:07:50
【问题描述】:
由于依赖问题,我无法销毁特定对象a。销毁它的方法是销毁一个不同的对象b,该对象具有dependent: :destroy,因为它的belongs_to关联到a:
class A < ActiveRecord::Base
#don't ever delete this directly
has_one :b, dependent: :destroy
end
class B < ActiveRecord::Base
#delete this object instead and it will automatically delete A
belongs_to :a, dependent: :destroy
end
有没有办法指定不允许删除a,但在删除b时仍然允许删除?
我可以把这个放在A:
before_destroy :prevent_destroy
private
def prevent_destroy
false
end
但是A 不会作为B 的依赖项被删除。
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3 activerecord ruby-on-rails-4 rails-activerecord