Solr - 如何在不传递查询字段的情况下搜索所有字段?
Solr - How to search in all fields without passing query field?
我试过如下,
<field name="collector" type="text_general" indexed="true" stored="false" multiValued="true" />
并将我的所有字段复制到 copyField,如下所示,
<copyField source="fullname" dest="collector"/>
<copyField source="email" dest="collector"/>
<copyField source="city" dest="collector"/>
而且我已将所有 copyField 标签放在
下面
<fields>
</fields>
标签。但我无法在所有领域进行搜索。我必须在查询之前传递 fullname,
q=fullname:Mayur
我想搜索,
q=Mayur
我应该搜索所有包含 Mayur 词的字段。
请帮帮我
确保字段已存储=true
<field name="field_name" type="text_general" indexed="true" stored="true"/>
如果在搜索过程中应该可以检索字段的值,则为真。
使用默认搜索字段:
Solr 在解析查询时使用 来确定应该使用哪个字段名称
在未使用显式字段名称的查询中搜索。
<defaultSearchField>collector</defaultSearchField>
在你的 schema.xml
这已在 solr 7 中弃用:
https://lucene.apache.org/solr/guide/7_0/major-changes-in-solr-7.html
建议使用df
参数。
我试过如下,
<field name="collector" type="text_general" indexed="true" stored="false" multiValued="true" />
并将我的所有字段复制到 copyField,如下所示,
<copyField source="fullname" dest="collector"/>
<copyField source="email" dest="collector"/>
<copyField source="city" dest="collector"/>
而且我已将所有 copyField 标签放在
下面<fields>
</fields>
标签。但我无法在所有领域进行搜索。我必须在查询之前传递 fullname,
q=fullname:Mayur
我想搜索,
q=Mayur
我应该搜索所有包含 Mayur 词的字段。
请帮帮我
确保字段已存储=true
<field name="field_name" type="text_general" indexed="true" stored="true"/>
如果在搜索过程中应该可以检索字段的值,则为真。
使用默认搜索字段: Solr 在解析查询时使用 来确定应该使用哪个字段名称 在未使用显式字段名称的查询中搜索。
<defaultSearchField>collector</defaultSearchField>
在你的 schema.xml
这已在 solr 7 中弃用:
https://lucene.apache.org/solr/guide/7_0/major-changes-in-solr-7.html
建议使用df
参数。