SOLR:将2个字段复制到另一个字段中,并向该新字段添加过滤器



导入时,我在CSV文件中有以下字段

<field name="Brand" type="string" indexed="true"/>
<field name="Colour" type="lowercaseExactMatch"/>
<field name="Keywords" type="text_general"/>
<field name="Name" type="text_general" indexed="true"/>
<field name="Price" type="string" indexed="true"/>
<field name="SKU" type="string" multiValued="false" indexed="true" required="true" stored="true"/>

我想动态创建另一个字段NameKeywords,我想在其中连接Name和Keywords字段。

此外,我想应用小写、EnglishPorterFilterFactory、EnglishPossessionFilter和连字符WordsFilter

因此,我可以通过创建自定义字段类型来将过滤器应用于该字段。但是如何将两个字段合并为另一个字段呢?

我在schema.xml 中看到了CopyField

<copyField source="Name" dest="Name_str" maxChars="256"/>

但不确定它是否在任何地方显示,以及如何在这里组合字段。

创建一个名为NameKeywords的字段,如下所示。

<field name="NameKeywords" type="customFieldType" indexed="true" stored="true" multiValued="true"/>

然后将源字段复制到目标字段,如下所示。

<copyField source="Name" dest="NameKeywords"/>
<copyField source="Keywords" dest="NameKeywords"/>

最新更新