3

次のように、カテゴリ ID をファセットできるようにインデックスを設定しました。

define_index
  ...

  has categorizings.category_id, :type => :multi, :facet => true
end

のようなクエリを実行するListing.facetsと、各 category_id がそのカウントを指すハッシュで正しい結果が得られます。:)

唯一の問題は、Thinking Sphinx がデータベース クエリを実行し、これらのオブジェクトの多く (すべてではない) をロードすることです! この属性は単なる MVA 整数であるため。翻訳は必要ないと思います。

何が起きてる?パフォーマンスのために、Thinking Sphinx がこれらすべての ActiveRecord オブジェクトをインスタンス化するのを止める方法はありますか? (何百もの可能性があります!) または、Sphinx と Thinking Sphinx でこれを達成するためのより良い方法はありますか?

ありがとう!

4

1 に答える 1

0

メインの search() エントリポイントの代わりに search_for_ids() を使用して、sphinx を使用して結果の主キーのみを返し、すべてのオブジェクトをロードしないようにできるようです。

http://freelancing-god.github.com/ts/en/searching.html#ids

于 2011-02-21T19:13:25.643 に答える