Я создаю скопированное поле с цветовыми синонимами из поля описания цвета, и это работает. Я в состоянии выполнять поиск с помощью скопированного поля как этогоНеопределенное имя x в предложении выбора, даже когда x сохраняется
/solr/my_keyspace.my_table/select?q=color_base:white
Но поле не отображается в результатах поиска, и если добавить поле в список полого, как этот
/solr/my_keyspace.my_table/select?q=color_base:white&fl=color_base
I получить ошибку
Undefined name color_base in selection clause
Вот моя схема - я думал, что хранится = «истинный» будет делать трюк, но это не так. Я просто хочу увидеть поле color_base в результатах поиска.
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<schema name="autoSolrSchema" version="1.5">
<types>
<fieldType class="org.apache.solr.schema.TextField" name="ColorField">
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.SynonymFilterFactory" ignoreCase="true" synonyms="color_synonyms.txt" tokenizerFactory="solr.KeywordTokenizerFactory"/>
</analyzer>
</fieldType>
<fieldType class="org.apache.solr.schema.StrField" name="StrField"/>
</types>
<fields>
<field indexed="true" multiValued="false" name="color_description" stored="true" type="StrField" docValues="true"/>
<field indexed="true" multiValued="true" name="color_base" stored="true" type="ColorField" docValues="true"/>
<copyField source="color_description" dest="color_base"/>
</fields>
<uniqueKey>(year, make, base_model)</uniqueKey>
</schema>
Это то, что я видел - так что, я думаю, я пытаюсь получить результат анализатора. Разве это невозможно? Я хочу, чтобы синонимы отображались в результатах поиска. –
Конечной целью для меня является фасет на анализируемых токенах - есть ли способ сделать это? –
@BrentonKlassen обновил мой ответ – Persimmonium