【发布时间】:2017-10-23 08:44:09
【问题描述】:
“我想问一下,简化一个示例。我在模式中有 2 个字段。
<fieldType name="text_field" class="solr.TextField" positionIncrementGap="100" />
<field name="title" type="text_field" indexed="true" stored="true" multiValued="true"/>
<field name="content" type="text_field" indexed="true" stored="true" multiValued="true"/>
title 和 content 字段返回 2 个语言值。 1. 土耳其语,2. 英语
title:[
"Orta Doğu Teknik Üniversitesi",
"Middle East Technical University"
]
content:[
"Örnek içerik",
"Example content"
]
问题
当我索引它时,我希望将 title 和 content 字段拆分为 title_tr、title_en 和 content_tr、content_en。
我知道我将使用LanguageDetection 来检测和更新语言。但我不知道如何提出我的要求。
我使用的是 Solr 4.9.0 版本。
<field name="title_en" type="text_field" indexed="true" stored="true" multiValued="true" />
<field name="content_en" type="text_field" indexed="true" stored="true" multiValued="true" />
<field name="title_tr" type="text_field" indexed="true" stored="true" multiValued="true"/>
<field name="content_tr" type="text_field" indexed="true" stored="true" multiValued="true"/>
<copyField source="title" dest="title_tr"/>
<copyField source="content" dest="content_tr"/>
<copyField source="title" dest="title_en"/>
<copyField source="content" dest="content_en"/>
我想要结果:
title_tr:[
"Orta Doğu Teknik Üniversitesi"
]
title_en:[
"Middle East Technical University"
]
content_tr:[
"Örnek içerik"
]
content_en:[
"Example content"
]
我该怎么做?
【问题讨论】:
-
你在使用 DataImportHandler 吗?
-
@Oyeme,不,我使用的是 solr4j。
-
@Oyeme,我有索引数据之前的最终状态:
title:[ "Orta Doğu Teknik Üniversitesi", "Middle East Technical University" ] content:[ "Örnek içerik", "Example content" ] -
你为什么不为此使用更新链处理器?
-
我没有尝试解决方案。因为我不得不处理另一个项目。