我看了很多类似的问题。答案是将所有字段复制到一个字段并将其设置为默认字段。但是,它仍然无法正常工作。
我的某些领域:
<field name="Unit" type="string" docValues="true" indexed="true" stored="true"/>
<field name="Amount" type="pdoubles" docValues="true" indexed="true" stored="true"/>
<field name="Comment" type="text_general" docValues="true" indexed="true" stored="true"/>
我添加:
<field name="searchall" type="text_general" multiValued="true" indexed="true" stored="true"/>
(我也尝试过stored =“ false”,但是它们都不起作用) 并通过架构API在托管模式下添加我需要的所有复制字段。
然后我改变了
<initParams path="/update/**,/query,/select,/tvrh,/elevate,/spell,/browse">
<lst name="defaults">
<str name="df">searchall</str>
</lst>
</initParams>
在solrconfig.xml中
当我搜索q =某物时,它仍然什么也没有。 有人知道我做错了吗?
答案 0 :(得分:0)
作为MatsLindh mentions in the comments,别忘了重新索引。
添加您的复制字段-如果您显式引用该字段而不使用
df
,它是否起作用?更改配置后是否已重新编制索引?如果添加了copyField指令后尚未重新索引,则目标字段中将不包含任何内容。在对文档建立索引时,将执行复制操作。
我重新导入数据,它可以正常工作。