【发布时间】:2026-02-02 03:05:01
【问题描述】:
我有一个结合黑光和 Solr 的小项目,需要 a) 提升字段 b) 根据字段值提升文档。我正在阅读SolrRelevancyFAQ 和extendedDisMax,但无法将它们应用于rails 项目,因为我是框架/语言的新手。我知道有一个catalog.controller,它几乎有所有的solr 配置。因此,对于部分猜测,我必须以某种方式在我的目录控制器中应用,但不知道如何实现它:
q=title:superman^2 subject:superman
或
ExtendedDisMax with qf=title^2 subject^2.8
对于第 2 部分。我不知道。 请帮忙。
编辑,我在 catalogue_controller 中使用以下代码管理(A)
config.default_solr_params = {
:qt => 'search',
:rows => 10,
:facet => 'true',
:qf => 'title^3 subject^2',
:defType =>'edismax'
}
对于 (b) 我尝试搜索字段 canfly 值为“yes”但不起作用的文档。 有什么想法吗?
config.default_solr_params = {
:qt => 'search',
:rows => 10,
:facet => 'true',
:bq => 'canfly:yes^50.0',
:defType =>'edismax'
}
根据solr documentationbq 提升值为指定即的字段
http://localhost:8983/solr/select/?q=video&defType=edismax&qf=features^20.0+text^0.3&bq=cat:electronics^5.0
但这在目录控制器中应用时不起作用。这是为什么呢?
Solr.log (这里我们可以看到实际存在的字段标签、描述和来源)
INFO - 2014-08-28 15:10:24.017; org.apache.solr.core.SolrCore; [raw_Geospatial_Collection] webapp=/solr path=/select params={facet=true&sort=time_created+desc&spellcheck.q=Pink&qf=label^20+description^2&f.tag.facet.mincount=1&wt=ruby&rows=10&defType=edismax&f.tag.facet.limit=6&bq=source:foursquare^50.0&q=Pink&facet.field={!ex%3Dtype_single}type&facet.field={!ex%3Dsource_single}source&facet.field={!ex%3Dcity_single}city&facet.field=tag&facet.field=gs_category_level2&qt=search&facet.pivot=gs_category_level1,gs_category_level2} hits=855 status=0 QTime=64
【问题讨论】:
-
您是否检查过 B) 中对 Solr 的实际查询是什么? Solr 日志应该向您显示 Solr 看到的参数。
标签: ruby-on-rails solr blacklight