4

我有几个 ActiveRecord 对象的关联标记为dependent: :destroy. 当用户删除其中一个对象时,我想向他展示将(递归)删除的所有对象的列表。我如何获得这份清单?

我在这里affected_on_destroy找到了gem ,但它并没有真正完成,似乎是 rails 2.2。Rails 中是否有更多最新的 gem 或某些功能可以做到这一点?

4

2 回答 2

1
Class.reflect_on_all_associations.
  keep_if{ |assoc| assoc.options[:dependent] == :destroy }.map(&:name)

这可能不是您想要的,但我认为reflect_on_all_associations应该可以得到您想要的。

于 2012-09-10T13:44:16.243 回答
1

我写了一个gem affected_by_destroy,源代码可以在这里找到。

于 2012-10-05T15:02:26.313 回答