2015-08-04 4 views
0

Можно ли указать имена динамических полей из запроса в SOLR DataImporter? Я нашел пару ссылок, которые говорят об обходном пути javascript, но они были с 2010 года, поэтому я надеюсь, что он просто работает сейчас.имена динамических полей в импортере данных SOLR

Я пытаюсь реализовать, как показано ниже. Но поля индексируются пустым, externalIdentifier должен быть.

<entity name="price" query="select pl.currencyUnit, pl.externalIdentifier, pl.label, pp.amount * 100 as 'amount', pp.wasAmount * 100 as 'wasAmount' from product_price_lists pl 
    inner join product_prices pp 
    on pl.id = pp.priceList_id 
    where pp.product_id = 1 
    and pp.markForDelete = 0 
    and publishDate &lt; now() 
    and archiveDate is null or archiveDate &gt; now(); 
    "> 
    <field column="amount" name="${price.externalIdentifier}__price" /> 
    <field column="wasAmount" name="${price.externalIdentifier}__price" /> 
    <field column="currencyUnit" name="${price.externalIdentifier}__currency__s" /> 
</entity>  
+0

вы уверены, что это $ {price.externalIdentifier} является имеющим значение или оно используется правильно? Ty со статическим значением например 1_price, 2_currency_s. После индексирования вы можете увидеть, кто является виновником – Ramzy

+0

Странно, я поставил трансформатор сценария для создания одного из имен полей. И все остальные начали работать. Но если я выберу трансформатор сценария, значения исчезнут снова. Это не имеет смысла. –

ответ

0

Добавить имя поля, как. Это

<dynamicField name="${price.externalIdentifier}__price" type="string" indexed="false" stored="true"/> 
or 
<dynamicField name="${price.externalIdentifier}__price" type="string" indexed="true" stored="true"/> 
Смежные вопросы