質問

MySQLデータベースの1列からSOLRの複数の列にマップしたい。DBテーブルが車であるとします、ここでmy data-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 Schemaでは、次の形式の2つのフィールドがあります。

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

しかし私がTempate Transformerを使用した後、私のデータはこのようなインデックスです(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