数日前にSphinxとThinking-SphinxをRubyonRails 2.3.2にインストールしましたが、基本的な検索はうまく機能します。これは、条件なしで意味します。ここで、いくつかの条件で検索をフィルタリングしたいと思います。
アナウンスモデルがあり、インデックスは次のようになります。
define_index do
indexes title, :as => :title, :sortable => true
indexes description, :as => :description, :sortable => true
end
間違っているかもしれませんが、これらの属性に構文を追加した場合にのみ:sortable => true
、検索の条件として使用できることに気付きました。それ以外の場合は何も見つかりません。
現在、acts_as_taggable_onプラグインも使用しています。これにより、タグとタグ付けの2つのdbテーブルが生成されます。タグのモデルはありませんacts_as_taggable_on :tags, :categories
。アナウンスモデルにあります。
私が今やりたいのは、タグでフィルタリングすることです。has tags(:id), :as => :tag_ids
それで、運が悪かったのでインデックスに追加しようとしました indexes tags(:id), :as => :tag_ids
が、それもうまくいきませんでした。
次のようなことができるように、インデックスを作成するにはどうすればよいですか。
Announcement.search 'some word', :conditions => {:tag_ids => some_id}
has
そしてまた、これはとの間の違いですindexes
ありがとう、ブライアン