0

使用 edismax defType 和 multiValued 字段时,我没有得到匹配。

<requestHandler name="/search" class="solr.SearchHandler">
  <lst name="defaults">
    <str name="echoParams">explicit</str>
    <str name="defType">edismax</str>
    <str name="q.alt">*:*</str>
    <str name="rows">20</str>
    <str name="fl">*,score</str>
    <str name="qf">
      title^1.8
    </str>
  </lst>
</requestHandler>

和 schema.xml 定义。

<types>
  <fieldtype name="string" class="solr.StrField" sortMissingLast="true" omitNorms="true"/>

<fields>
  <field name="title" type="string" indexed="true" stored="true" multiValued="true" /> 

当我检查文档时,会返回一个完全匹配的文档。

"docs": [
  {
    "id": 3,
    "title": [
       "logo"
     ],
     "_version_": 1465224933480071200,
     "score": 1
  },..

但是当我执行以下查询时,numFound 为 0。

/solr/core1/search?q=logo&wt=json&indent=true

multiValued="false" 字段不会发生这种情况。

有任何想法吗?

4

1 回答 1

0

您是否已经尝试过:/solr/core1/search?q=title:logo&wt=json&indent=true?这是我的一个错误。

于 2014-11-26T10:24:40.793 回答