solr - 将字段设置为默认搜索字段

标签 solr solr4

以下查询对我很有效

http://[]:8983/solr/vault/select?q=VersionComments%3AWhite

返回版本注释包含 White 的所有文档

我尝试省略字段名称并将其作为默认值,如下所示:
在 solr 配置中我写
<requestHandler name="/select" class="solr.SearchHandler">
<!-- default values for query parameters can be specified, these
     will be overridden by parameters in the request
  -->
 <lst name="defaults">
   <str name="echoParams">explicit</str>
   <int name="rows">10</int>
   <str name="df">PackageName</str>
   <str name="df">Tag</str>
   <str name="df">VersionComments</str>
   <str name="df">VersionTag</str>
   <str name="df">Description</str>
   <str name="df">SKU</str>
   <str name="df">SKUDesc</str>
 </lst>

我重新启动 solr 并创建一个完整的导入。
然后我尝试使用
 http://[]:8983/solr/vault/select?q=White  

(在哪里
 http://[]:8983/solr/vault/select?q=VersionComments%3AWhite

仍然有效)

但我没有得到任何文件作为答案。
我究竟做错了什么?

最佳答案

据我所知你应该只有 <str name="df"></str>在您的 requestHandler 中声明一次

通常我所做的是将我想要搜索的所有字段复制到名为 text 的默认搜索字段中。 .

架构.xml:

<copyField source="name_t" dest="text"/>

配置文件
<requestHandler name="/select" class="solr.SearchHandler">
<!-- default values for query parameters can be specified, these
     will be overridden by parameters in the request
-->
<lst name="defaults">
   <str name="q">*:*</str>
   <str name="echoParams">explicit</str>
   <int name="rows">10</int>
   <str name="df">text</str>
</lst>
</requestHandler>

如果这还不够好,您可以随时使用 dismax 搜索其他字段。使用 qf 搜索声明如下:
http://localhost:8983/solr/vault/select/?q= White&defType=dismax&qf=PackageName+Tag+VersionComments+VersionTag+Description+SKU+SKUDesc

关于solr - 将字段设置为默认搜索字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17927992/

相关文章:

Solr 返回错误 #404 Not Found for url http ://localhost:8983/solr/update? commit=true

node.js - 使用 Node 模块 solr-client 添加和更新数据到 Solr-4.3.0

java - Solrj 查询 https 协议(protocol)错误

solr - 使用 solr 6.4.1 配置 Tesseract

java - Solr 和 postgresql 集成

Solr edismax 通配符搜索未找到原始字符串

java - SolrIndexerJob : runtime error

solr - 无法在 Solr 云上创建集合

solr4 - SOLR : solrQuery. addDateRangeFacet():无法将间隙 %2B1DAY 添加到字段的值:

Solr 建议者重复建议