Sunspot Solr访问搜索结果中的非存储属性字段

时间:2012-09-13 22:29:57

标签: solr sunspot sunspot-rails sunspot-solr websolr

我在Rails上使用Sunspot Solr进行搜索。

在我的班级定义中,我有类似的东西(从我的真实版本中简化):

searchable do
  text :name
  integer :count
  boolean :priority
end

我有没有办法直接在搜索的匹配结果中访问其值的整数和布尔字段?

我看到可以选择使用stored => true设置属性字段,这使得它们可用于命中对象。但是,整数和布尔字段显然已经存储在某处,因为我能够对它们进行排序和过滤,而不是通过命中对象的存储方法访问它们,所以有什么办法可以让它们显示出去?

如果对此的答案为否,那么stored => true在传递给整数或布尔字段时究竟做了什么?

我在Websolr上有一个相当大的索引,用stored => true重新索引这个索引会有点过分。

1 个答案:

答案 0 :(得分:2)

Common field options

索引=真|假
如果此字段应“索引”,则为True。 如果(并且仅当)字段被索引,则它是可搜索的,可排序的和可表示的。

存储=真|假
如果在搜索期间应该可以检索字段的值,则为True。

索引和存储数据的维护方式不同。索引在内部使用索引数据进行操作 如果要显示数据,则必须使用存储属性true索引数据。