これが簡単なものになることを願っています:)これをエミュレートしようとして、has_manyオプションをいじって何時間も詰め込んでいます:
has_many :pages, :finder_sql => %q(SELECT * FROM `pages` LEFT OUTER JOIN `component_instances` ON `component_instances`.instance_id = `pages`.id AND `component_instances`.instance_type = 'Page' WHERE `component_instances`.parent_id = #{id})
これは基本的にポリモーフィック結合であるため、中心的な構造として機能し、さまざまなタイプのものをぶら下げている component_instances テーブルがあります。これはネストされたセットです (この場合は問題ではありません)。
問題は、has_many では結合条件を操作できないことのようです。また、自動生成される外部キー結合条件を無効にすることはできません。
上記のコードは機能しますが、結果にスコープを使用したいのですが、カスタム クエリではそれができません。
どんな助けでも大歓迎です:)
乾杯、
ブレンドン