SilverStripe ElasticSearch при запросе записей по ключевому слову разделяет строку по пробелам и фильтрует по OR - PullRequest
0 голосов
/ 09 января 2020

Я работаю над проектом SilverStripe. В моем проекте я реализую функциональность поиска, используя ElasticSearch. Я использую этот пакет, https://github.com/Cyber-Duck/SilverStripe-Searchly для ElasticSearch. Я настраиваю запрос для поиска по ключевому слову.

Это запрос

$query['bool']['must'][] = [
        'simple_query_string' => [
              'query' => $cleansedKeyword,
              'fields' => ['Title^2', 'Description'], 
              'analyze_wildcard' => true,
              "analyzer" => "keyword",
              'default_operator' => "AND",
        ]
];

Я искал ключевое слово "manager wai". Он вернул записи, в которых есть «менеджер» или «вай». Что я хочу, так это то, что я хочу настроить ключевое слово «manager wai» как целое ключевое слово для запроса. Поэтому, когда он ищет контент, он возвращает только те записи, в которых есть «manager wai». "managerwai" тоже хорошо. Как я могу это сделать?

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