我正在使用Tire来实现对Rails应用程序的搜索。
该应用程序由实现ActiveModel的CouchDB和couchrest_model gem支持。

从自述文件中可以看出,有一个选项: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,我希望ES仅搜索titlequestion_content的索引。

我想念理解还是一个错误?

//编辑

删除索引并重新创建它可以识别出我设置的include_in_all选项。

最佳答案

删除索引并重新创建它可以识别出我设置的include_in_all选项。

关于ruby - Tire:include_in_all => false,但字段仍包含在_all中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12817303/

10-12 13:10