Алголия: ограничить поисковые атрибуты определенной частью запроса

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

Однако я хотел бы иметь возможность ограничивать только часть запроса этим атрибутом, как это можно сделать с помощью функции поиска Gmail.

Например, я хочу, чтобы пользователь мог искать:

Travel from:John

И это будет искать слово «Джон» только в атрибуте «от», а затем будет искать «Путешествие» по всем доступным для поиска атрибутам.

Я мог бы сделать from аспектом и отправить Travel в качестве запроса, а затем facetFilters[from:John], но если значение from равно «Джон Смит», это не будет хитом. Грани должны идеально совпадать.

Я был бы признателен за любую помощь в этом и буду рад предоставить дополнительные разъяснения, если это необходимо.


person brianrhea    schedule 15.05.2016    source источник


Ответы (1)


Что вы могли бы сделать, так это создать индекс, содержащий ваших пользователей. Когда ввод содержит строку триггера (например, «from:»), вы можете выполнить автозаполнение поиска по ним, а затем добавить их в окончательный запрос как аспект.

Пример очень похожего варианта использования можно найти в разделе Автозаполнение в текстовой области который реализует систему упоминаний, подобную твиттеру.

Смешивание этого с обычным запросом, который вы бы сделали в противном случае, может подойти.

person Jerska    schedule 10.06.2016