2

Railsアプリの検索を実装するためにタイヤを使用しています。このアプリは、ActiveModel を実装する CouchDB と couchrest_model gem によって支えられています。

readme から、オプション :include_in_all があることがわかりますが、その動作については説明されていませんが、_all をクエリするときにインデックスが含まれないと思います

次のマッピングが与えられた場合

mapping do
  indexes :id,                :index    => 'not_analyzed', :include_in_all => false
  indexes :title,             :analyzer => 'snowball', :boost => 100
  indexes :question_content,  :analyzer => 'snowball'
  indexes :skill_id,          :index    => 'not_analyzed', :include_in_all => false
  indexes :topic_id,          :index    => 'not_analyzed', :include_in_all => false
  indexes :archived,          :type     => 'boolean', :include_in_all => false
  indexes :created_at,        :type     => 'date', :index => 'not_analyzed', :include_in_all => false
  indexes :published_at,      :type     => 'date', :index => 'not_analyzed', :include_in_all => false
end

クエリで default_field を指定しない場合、titleESはインデックスのみを検索することを期待します。question_content

理解できていないのでしょうか、それともバグですか?

//編集

インデックスを削除して再作成すると、設定した include_in_all オプションが認識されます。

4

1 に答える 1

0

インデックスを削除して再作成すると、設定したinclude_in_allオプションが認識されます。

于 2012-10-10T10:57:01.087 に答える