0

私のチームは、アプリケーションの検索プロバイダーとしてSolrとSunspot-Railsを実装しようとしています。私たちの話では、テキストフィールドに加えて特定の文字列フィールドを検索する必要があります。ActiveRecordコールバックを使用して、これらのフィールドを(テキストタイプの)統合インデックスフィールドに集約する人もいます。これが私の唯一の希望ですか、それとも私が見逃しているワイルドカードの議論がありますか?

4

1 に答える 1

1

このようにインデックスが作成されるフィールドを定義できます

class Post < ActiveRecord::Base
  searchable do
    text :title, :body
    text :comments do
      comments.map { |comment| comment.body }
    end
    string  :sort_title do
      title.downcase.gsub(/^(an?|the)/, '')
    end
  end 
end

次に、それらを検索します。このように検索するフィールドを指定できます。

Post.search do
  fulltext 'pizza' do
    fields(:body, :title)
  end
end

フィールドを指定しなかった場合は、インデックスが作成されたすべてのテキストフィールドに検索が適用されます

Post.search do
  fulltext 'best pizza'
end
于 2013-03-14T12:23:57.703 に答える