4

としてマークされた関連付けを持つ ActiveRecord オブジェクトがいくつかありますdependent: :destroy。ユーザーがこれらのオブジェクトの 1 つを削除したときに、(再帰的に) 削除されるすべてのオブジェクトのリストをユーザーに提示したいと考えています。このリストを取得するにはどうすればよいですか?

ここaffected_on_destroyで宝石を見つけましたが、実際には完成しておらず、Rails 2.2 のようです。これを行うための最新の宝石やレールの機能はありますか?

4

2 に答える 2

1

私は gem を書きました。affected_by_destroyソースはここにあります。

于 2012-10-05T15:02:26.313 に答える
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 に答える