Сопоставление от одного столбца БД на множественное поле в Solr

StackOverflow https://stackoverflow.com//questions/22062286

  •  23-12-2019
  •  | 
  •  

Вопрос

Я хочу отобразить из одного столбца в базе данных MySQL в несколько столбцов в Solr.Предположим, что мой стол БД - автомобиль, вот мой файл 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, мои данные такие показатель (даже если я не использую Template Transformer Over 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