【发布时间】:2012-04-24 16:10:56
【问题描述】:
我在 rails 应用程序中使用 sunspot 和 solr 来搜索电子书内容,对于突出显示功能,我必须将 ebook_content 设置为存储文件,每次我向 solr 查询结果时,它都会发回关于书,这使得查询很慢。
如果没有存储字段,我怎么能只得到结果?
【问题讨论】:
标签: ruby-on-rails-3 solr sunspot
我在 rails 应用程序中使用 sunspot 和 solr 来搜索电子书内容,对于突出显示功能,我必须将 ebook_content 设置为存储文件,每次我向 solr 查询结果时,它都会发回关于书,这使得查询很慢。
如果没有存储字段,我怎么能只得到结果?
【问题讨论】:
标签: ruby-on-rails-3 solr sunspot
fl parameter of Solr 允许您指定要在结果中返回的字段。如果您有字段id, title, ebook_content,那么您可以使用fl=id,title 省略ebook_content 字段。我认为 Solr 不支持获取所有字段除了一个(例如-ebook_content)。
更新
如果您不想在正常结果中返回该字段,但仍希望在该字段上使用highlighting,请按照我上面的描述排除该字段,然后打开荧光笔:
hl=true
设置应突出显示的字段:
hl.fl=ebook_content
并设置高亮片段的大小(以字符为单位):
hl.fragsize=50
您完成的查询如下所示:
?q=search term&fl=id,title&hl=true&hl.fl=ebook_content&hl.fragsize=50
【讨论】:
ebook_content 上突出显示,但您不想将其作为结果的一部分返回?我真的不明白...
ebook_content的摘录,在突出显示的位置;对吗?