无法在我在架构中定义的字段中搜索.xml例如复制字段



我已通过以下方式将多值字段添加到架构.xml:

<field name="text_qs" type="text" indexed="true" stored="false" multiValued="true"/>

并向其添加了两个字段:

<copyField source="name" dest="text_qs"/>
<copyField source="symbol" dest="text_qs"/>

之后,我对solr执行索引,重新启动它,但仍然无法在此字段中搜索text_qs。 我通过 solr 管理 http://localhost:8061/solr/admin/中的搜索text_qs:ge检查了它。

你能问问为什么吗?

通常,我尝试在某些字段中创建搜索。因为现在我们可以在字段中搜索text_def,这是<defaultSearchField>text_def</defaultSearchField>. 这个字段text_def的定义方式类似,如下所示:

<field name="text_def" type="text" indexed="true" stored="false" multiValued="true"/>

它只是没有复制字段:

<copyField source="name" dest="text_def"/>
<copyField source="symbol" dest="text_def"/>
<copyField source="numb" dest="text_def"/>
....

所以现在当我们输入'ge'时,我们在默认搜索字段text_def中搜索此'ge',并在字段中搜索'name', 'symbol', 'numb',....但是我们只想在'name''symbol'中进行搜索。这就是为什么我尝试创建字段text_qs.

这正确吗?

尝试存储更改=true

<field name="text_qs" type="text" indexed="true" stored="true" multiValued="true"/>

如果字段的值在搜索期间应可检索,则为 True。

很抱歉混淆了。 事实证明,问题出在索引上。执行索引的脚本在这种情况下没有用,我不得不使用另一个脚本。 感谢您的帮助!

最新更新