我在Rails上使用Sunspot Solr进行搜索。
在我的班级定义中,我有类似的东西(从我的真实版本中简化):
searchable do
text :name
integer :count
boolean :priority
end
我有没有办法直接在搜索的匹配结果中访问其值的整数和布尔字段?
我看到可以选择使用stored => true
设置属性字段,这使得它们可用于命中对象。但是,整数和布尔字段显然已经存储在某处,因为我能够对它们进行排序和过滤,而不是通过命中对象的存储方法访问它们,所以有什么办法可以让它们显示出去?
如果对此的答案为否,那么stored => true
在传递给整数或布尔字段时究竟做了什么?
我在Websolr上有一个相当大的索引,用stored => true
重新索引这个索引会有点过分。
答案 0 :(得分:2)
索引=真|假
如果此字段应“索引”,则为True。
如果(并且仅当)字段被索引,则它是可搜索的,可排序的和可表示的。
存储=真|假
如果在搜索期间应该可以检索字段的值,则为True。
索引和存储数据的维护方式不同。索引在内部使用索引数据进行操作 如果要显示数据,则必须使用存储属性true索引数据。