我有几个ActiveRecord对象,其关联标记为dependent: :destroy
。当用户删除其中一个对象时,我想向他提供一个将(递归)删除的所有对象的列表。我如何获得此列表?
我找到了affected_on_destroy
gem here,但它并没有真正完成,似乎是rails 2.2。是否有一些更新的当前宝石或铁轨中的某些功能来做到这一点?
答案 0 :(得分:1)
Class.reflect_on_all_associations.
keep_if{ |assoc| assoc.options[:dependent] == :destroy }.map(&:name)
这可能不是你想要的,但我认为reflect_on_all_associations
应该能得到你想要的东西。
答案 1 :(得分:1)
我写了一个宝石affected_by_destroy
,可以找到来源here。