SOLR советник возвращает значения - PullRequest
0 голосов
/ 25 июня 2019

Я реализовал подсказку SOLR для поиска имен (имя, отчество, фамилия). Данные для имен получены из базы данных и хранятся в поле имя в SOLR.

Например. данных будет: имя: Том, Джейсон, Смит Если нет второго имени, данные будут: name: TOM ,, FORD

Подсказчик не возвращает значение, если я ищу TOM FORD. Это хорошо работает, если я ищу TOM JASON.

<searchComponent name="suggest" class="solr.SuggestComponent">
        <lst name="suggester">
            <str name="name">mySuggester</str>
            <str name="lookupImpl">FuzzyLookupFactory</str>
            <str name="exactMatchFirst">true</str>
            <str name="dictionaryImpl">DocumentDictionaryFactory</str>
            <str name="field">name</str>
            <str name="weightField">name</str>
            <str name="suggestAnalyzerFieldType">string</str>
            <str name="buildOnStartup">false</str>
            <str name="buildOnOptimize">true</str>
            <str name="storeDir">fuzzy_suggestions</str>            
        </lst>
    </searchComponent>

Поле настроено следующим образом в schema.xml

<field name="name" type="text_exact_fuzzy" indexed="true" stored="true"/>

<fieldType name="text_exact_fuzzy" class="solr.TextField" omitNorms="false">
        <analyzer type="index">
            <tokenizer class="solr.ClassicTokenizerFactory"/>
            <filter class="solr.DoubleMetaphoneFilterFactory"/>
            <filter class="solr.LowerCaseFilterFactory"/>           
        </analyzer>
        <analyzer type="query">
            <tokenizer class="solr.ClassicTokenizerFactory"/>
            <filter class="solr.DoubleMetaphoneFilterFactory"/>
            <filter class="solr.LowerCaseFilterFactory"/>           
        </analyzer>
    </fieldType>

Есть ли способ заставить подсказку вернуть значения, в которых отчество не существует?

Одним из способов поиска является включение запятых в строку поиска, например. ТОМ ФОРД. Это работает, но я пытаюсь заставить его работать без запятых.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...