Проблемы с соответствием Searchkick / Elasticsearch - PullRequest
0 голосов
/ 10 апреля 2020

У меня есть приложение Rails и я использую Searchkick. Я использую данные JSON для выбора Select2 и пытаюсь уточнить результаты. До сих пор я изо всех сил пытался понять соответствие для SK / ES и, наконец, задал этот вопрос.

Мой выбор возвращает соответствие некоторых сопоставлений из моей модели, например,

  • 7800.101 Fruit | Яблоки | $ 1234
  • 7800.102 Фрукты | Апельсины | $ 1234
  • 7800.200 Овощи | Морковь | $ 8765

Отображение выглядит так:

  • "label" | "описание" | «количество»

Мой вызов ES прост - все, что я передаю, это текст запроса и указание соответствия по умолчанию :word из документов:

https://github.com/ankane/searchkick#partial -matches

Так что, если я запрашиваю:

  • «Яблоки», я получаю первый ожидаемый товар
  • «Фрукты» Я получаю первые два как ожидается
  • "Морковь" Я получаю третий, как и ожидалось
  • "Фруктовые апельсины" возвращает первое с :or и ничего с :and
  • "102" или любое другое из чисел ничего не отфильтровывает (я получаю все результаты, такие же как "*")

Кажется, что-то здесь не хватает, и документы не очень ясны по этому вопросу.

Дополнительный бонусный вопрос - как получить результаты с помощью трехбуквенных запросов - по умолчанию, кажется, только после 4-го символа.

...