検索したい複数のモデルがあり、結果にすべてのモデルの結果が含まれるようにします。 「ブーツ」の検索をしたいとしましょう。ブーツのカテゴリを返すだけでなく、実際のブーツだけでなくブーツを販売する小売業者も返すようにしたいとしましょう。カテゴリ、ベンダー、製品のモデルがあります。私はここでどのような関係を探していますか?
すべてのオブジェクトが結合を必要とするため、この場合は結合テーブルを作成する必要はなく、すべてのオブジェクトを検索に含める必要があるため、これは不要です。
私は豪華な宝石を使用することを考えていますが、これは私の検索手順に関係なく同じであるため、これは質問にとって重要ではないと私は考えています。
多分、結び付いた関係が意味をなさないかもしれませんが、私はそれの周りに私の頭を包み込むことはできません。
これはすてきな解決策です。私の回答は、あなたの検索が複数の属性、すなわちタイトル、製品の説明、またはベンダーの説明属性などにあると仮定していました。私は一種の豪華な宝石についてあなたの意見を見逃していましたが、私はそれを知らないのですが、この回答と組み合わせてransackがActiveModelによって変形されたUNIONSよりも簡単であるように思えます。 – RadBrad
これは、カテゴリ名またはベンダープロパティ(名前、販売用の製品など)がクエリと一致する状況を処理しません。結果セットにはタイプに関係なく一致するオブジェクトが含まれている必要があるため、ベンダー、カテゴリ、および製品を含むように結果が必要です。 – Eric
その場合は、3つのクエリが必要です。1つのモデルにつき1つです。 – jdoe