我有几个 ActiveRecord 对象的关联标记为dependent: :destroy
. 当用户删除其中一个对象时,我想向他展示将(递归)删除的所有对象的列表。我如何获得这份清单?
我在这里affected_on_destroy
找到了gem ,但它并没有真正完成,似乎是 rails 2.2。Rails 中是否有更多最新的 gem 或某些功能可以做到这一点?
我有几个 ActiveRecord 对象的关联标记为dependent: :destroy
. 当用户删除其中一个对象时,我想向他展示将(递归)删除的所有对象的列表。我如何获得这份清单?
我在这里affected_on_destroy
找到了gem ,但它并没有真正完成,似乎是 rails 2.2。Rails 中是否有更多最新的 gem 或某些功能可以做到这一点?
Class.reflect_on_all_associations.
keep_if{ |assoc| assoc.options[:dependent] == :destroy }.map(&:name)
这可能不是您想要的,但我认为reflect_on_all_associations
应该可以得到您想要的。
我写了一个gem affected_by_destroy
,源代码可以在这里找到。