Solr Suggester: вернуть несколько полей в ответ

Я использую Solr версии 3.5. Я хочу реализовать функцию автоматического предложения в своем приложении с помощью подхода Suggester. http://wiki.apache.org/solr/Suggester.

Может кто-нибудь, пожалуйста, помогите мне со следующим:

Как я могу вернуть более одного поля в ответ на запрос. Например, я пытаюсь создать индекс на основе поля «имя», но я также хочу вернуть поле «идентификатор», где эти два поля являются атрибутами продукта, которые я ищу [скажем, названия фильмов]. Следовательно, ответ должен включать как «идентификатор», так и «название» продукта.

Как я могу выполнить поиск без учета регистра с помощью Suggester? Например, поисковый запрос «abc» должен возвращать документы, содержащие имя «ABC», «Abc» и т. д.

Пожалуйста помоги.

С Уважением.


person anand tiwari    schedule 28.06.2013    source источник
comment
Привет всем, я решил проблему предложения с учетом регистра, преобразовав все в нижний регистр. Однако до сих пор не удалось найти способ возврата нескольких полей в ответ. Любые предложения будут полезны.   -  person anand tiwari    schedule 01.07.2013
comment
anand: bhai, вы смогли решить проблему с несколькими полями? Я столкнулся с той же проблемой. Пожалуйста, не могли бы вы поделиться своим решением. Большое спасибо   -  person nish    schedule 27.11.2013
comment
Привет, Ниш. Нет, Solr не поддерживает это.   -  person anand tiwari    schedule 03.02.2014
comment
Спасибо за обновления. Любой другой способ сделать это?   -  person nish    schedule 03.02.2014


Ответы (3)


Я думаю, вы не совсем поняли суть предложения. Он не предназначен для возврата предложений только для одного результата поиска для каждой записи (это единственный сценарий, в котором возврат идентификатора имеет смысл).

Однако вы можете выполнять обычный поиск по подстановочным знакам в поле заголовка и использовать возвращенные заголовки в качестве предложений. Таким образом, вы также можете получить идентификатор (и любое другое поле индекса) с результатами. Я предполагаю, что это можно было бы довольно легко реализовать с помощью пользовательского интерфейса jQuery. Это может быть намного медленнее, чем API предложений, в зависимости от схемы вашего индекса.

person Konrad Holl    schedule 04.08.2015

если вас не очень интересует порядок предложений, я обнаружил, что поле weight_field можно [ab]использовать для возврата идентификатора документа для каждого предложения.

person Nikos Tsagkas    schedule 02.04.2016

Если вы хотите получить предложения по определенному полю, а также вернуть другие поля в документе, вы можете использовать тег «Полезная нагрузка». Разрешено только одно поле полезной нагрузки, но вы можете обойти это, используя формат json в поле.

https://cwiki.apache.org/confluence/display/solr/Suggester

https://stackoverflow.com/a/32558487/578582

person eamon1234    schedule 09.05.2017
comment
Что вы имеете в виду, говоря, что можете обойти это, используя формат JSON? Не могли бы вы помочь мне понять? - person Gibbs; 15.06.2020