Я пытаюсь сделать дизъюнктивный фильтр по тегам в Algolia, но там нет документации. Это то, что я делаю на самом деле:
helper.addTag('Shangai').search();
Это будет фильтровать все документы, имеющие тег Shangai. Но мне нужно также получить все документы, имеющие тег Brooklyn.
helper.addTag('Brooklyn').search();
После этого я получаю 0 результатов, потому что algolia использует оператор AND по умолчанию для поиска в тегах, поэтому ищет документы, которые имеют Shangai AND Brooklyn. Что мне нужно Шанхая ИЛИ Бруклина.
Кто-нибудь знает, как это сделать?
Для достижения вашей цели вы можете использовать метод setQueryParameter
.
helper.setQueryParameter('filters', 'Shangai OR Brooklyn').search();
Кроме того, я бы рекомендовал вам заключить ваши значения тегов между двойными кавычками, если они содержат пробелы.
helper.setQueryParameter('filters', '"Shangai" OR "Brooklyn"').search();
Обратите внимание, что setQueryParameter
поддерживает все зарегистрированные параметры поискового запроса Algolia.