簡體   English   中英

Solr字段不返回結果

[英]Solr Field does not return results

Solr不會返回結果,直到我給:field名稱加上前綴,例如,我正在搜索Ajay,我需要給name:Ajay加上前綴才能得到結果。我嘗試了copy標記。但是它似乎沒有返回結果。您請告訴我,除了以下更改之外,我還能更改什么。

<copyField source="name" dest="text"/>
<copyField source="last_name" dest="text"/>

配置此文件的舊方法是使用schema.xml中的<defaultSearchField> 如果查詢中沒有其他字段,則表示默認搜索的字段。

您可能要在查詢中使用df參數(或如其他答案所述,將其添加為默認值),或者如果您正在使用(e)dismax處理程序(可能是),請使用qf參數以指示要查詢的字段以及不同字段之間的權重。

q=Ajay&qf=text&defType=edismax

..應該做你想做的。

如果查看solrconfig.xml文件,您將看到/ select requestHandler配置有默認搜索字段,如下所示:

<lst name="defaults">
  <str name="df">aField</str>
</lst>

在這里,您可以輸入所需的字段,例如:

<lst name="defaults">
  <str name="df">name</str>
</lst>

您可以看到有關此主題的另一個主題和Solr文檔

要構建可搜索字段,請在您的schema.xml中創建一個新字段:

<field name="searchable_field" type="text_general" indexed="true" stored="true"  multiValued="true" />

之后,您可以在新字段中復制所需的字段:

<copyField source="name" dest="searchable_field"/>
<copyField source="last_name" dest="searchable_field"/>
<copyField source="birthday" dest="searchable_field"/>
<copyField source="location" dest="searchable_field"/>

最后,只需要將這個新字段放入solrconfig.xml

<lst name="defaults">
  <str name="df">searchable_field</str>
</lst>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM