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

时间:2013-07-30 07:52:29

标签: solr solr4

以下查询适用于我

http://...:8983/solr/vault/select?q=White&defType=edismax&qf=VersionComments+VersionName

返回版本注释包含白色

的所有文档

我尝试省略包含字段名称的qf: 在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">VersionName</str>
   <str name="df">SKU</str>
   <str name="df">SKUDesc</str>
 </lst>

我重新启动solr并创建一个完整的导入 然后我尝试使用

 http://...:8983/solr/vault/select?q=White&defType=edismax

但是我没有把文件作为答案 我做错了什么?

3 个答案:

答案 0 :(得分:3)

df是默认字段,只有在未定义qf且配置中包含单个定义字段时才会生效。

您可以使用qt = edismax参数检查以下配置: -

<requestHandler name="edismax" class="solr.SearchHandler" >
    <lst name="defaults">
        <str name="defType">edismax</str>
        <str name="echoParams">explicit</str>
        <str name="df">PackageName Tag VersionComments ....</str>
    </lst>
</requestHandler>

答案 1 :(得分:1)

您可以使用带有重量指示的qf(查询字段)。

<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="qf">PackageName^40.0 Tag^10.0 VersionComments^5.0 VersionTag^4.0</str>
   <!--
   [....]
   -->
 </lst>
</requestHandler>

答案 2 :(得分:1)

Solr 4.8.1我们可以按如下方式进行默认。通过编辑solrconfig.xml

<requestHandler name="/clustering" startup="lazy" enable="${solr.clustering.enabled:false}" class="solr.SearchHandler">    
    <lst name="defaults">

        <!-- Configure the remaining request handler parameters. -->
        <str name="defType">edismax</str>
        <str name="qf">
            text^0.5 features^1.0 name^1.2 sku^1.5 id^10.0 manu^1.1 cat^1.4
        </str>

        <str name="q.alt">*:*</str>
        <str name="rows">10</str>
        <str name="fl">*,score</str>
    </lst>
        <arr name="last-components">
          <str>clustering</str>
        </arr>
</requestHandler>