0

ファセットの結果に寄与するオブジェクトの主キーを取得する簡単な方法があるかどうか疑問に思っています。

つまり、 ifsearch.facet(....).rows.firstが a を返す場合FacetRow、このオブジェクトから、 thissearch.hitsに寄与するのサブセットを取得できFacetRowますか? これを行うためのまったく異なる方法がある場合は、お知らせください。

注: 私の問題の全体像を把握するために (おそらく既に理解されていると思います)、ファセットがカウントするオブジェクトにドリルダウンしたいと思います。

前もって感謝します

4

1 に答える 1

1

には実際のFacetRow検索結果は含まれていません。問題のを含む現在の結果セット内のオブジェクトの数が含まれていますFacetRow

実際の結果を取得するには、つまり「ドリルダウン」するには、を含むクエリに問題のファセットを追加して、別の検索を実行する必要がありますFacetRow

以下は、私が何を意味するかを説明するサンプルコードです。私の例では、自分のプロジェクトの「料理」と呼ばれるファセットを使用していることに注意してください。その文字列は、特定のファセットが何であれです。私自身の実装では、このスニペットはファセットイテレーターで部分的にレンダリングされるため、ファセットごとに繰り返されます。@searchResponseのリターンですModel.search

  <% for row in @searchResponse.facet('cuisines').rows %>
    <%= link_to(row.instance.name, request.request_uri, facet + '[]=' + row.value.to_s ) %> (<%= row.count %>)</li>
  <% end %>
于 2011-11-24T14:15:19.733 に答える