Solr-添加自定义';非多值';元标记

Solr-添加自定义';非多值';元标记,solr,Solr,我想为我的每个页面添加自定义元标记,以确定其类别,在搜索过程中,我可以稍后按进行分组 因此,在我的“schema.xml”中,以下是我对元标记的定义: <field name="metatag.description" type="text_general" stored="true" indexed="true" multiValued="false"/> 但是,存储的值仍然是多值的,因此无法分组。 尝试重新启动Solr,但无效。感谢您的帮助。谢谢。首先-如果要将多值字段更改

我想为我的每个页面添加自定义元标记,以确定其类别,在搜索过程中,我可以稍后按进行分组

因此,在我的“schema.xml”中,以下是我对元标记的定义:

<field name="metatag.description" type="text_general" stored="true" indexed="true" multiValued="false"/>

但是,存储的值仍然是多值的,因此无法分组。
尝试重新启动Solr,但无效。感谢您的帮助。谢谢。

首先-如果要将多值字段更改为不再多值字段,则必须清除索引并重新索引,因为内容仍然作为多值字段存储在索引中(并且可能已经包含多个值)


第二,据我所知,您不想使用
text\u general
字段进行分组,因为该字段是标记化和处理的(这意味着它被拆分为多个标记)。使用字符串字段,使字段保持原样。

Hi@MatsLindh。我只是尝试用一个新的核心创建,并且使用字符串作为字段类型也没有用。你已经显式地将multiValued设置为false了吗?模式浏览器也显示了这一点?您使用的是托管模式还是经典模式工厂?是的,显式声明多值为false。但模式浏览器将显示MultiValued仍然正确。我正在使用schema.xml文件。是否应改为位于managed-schema.xml中?如果存在托管架构文件,则该架构通过API]()进行管理,而不是位于schema.xml文件中。虽然不建议直接编辑托管模式文件,但人们已经停止了Solr,并这样做了(如果您没有使用zookeeper和cloud),但使用API是首选。