我想从MySQL数据库中的一个列映射到solr中的多个列。假设我的DB表是汽车,这是我的数据 - config.xml文件:

<dataConfig>
  <document name="car">
    <entity name="car" query="select * from cars" transformer="TemplateTransformer">
      <field column="id" name="id" template="Car ${car.id}"/>
      <field column="id" name="id_ss" />
    </entity>
  </document>
</dataConfig>
.

在solr模式下,我有2个字段,具有以下格式:

id: with format "Car {id from db}"
id_ss: with format "{id from db}"
.

但是在我使用灌肠器变形器之后,我的数据是这样的索引(即使我不在ID_SS字段上使用模板变换器):

id: "Car {id from db}"
id_ss: "Car {id from db}"
.

如何在我想要的时候使它运作?

有帮助吗?

解决方案

这样做:

<entity name="car" query="select id as id_ss, concat('Car ', id) as id from cars">
  <field column="id" name="id" template="Car ${car.id}"/>
  <field column="id_ss" name="id_ss" />
.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top