Поиск по ближайшему месту, используя подсказку о завершении - PullRequest
1 голос
/ 02 мая 2020

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

Вот как я создаю свой индекс:

`location: { 
  type: "geo_point"
},
context2: {
  type: "completion",
  analyzer: "my_analyzer",
  contexts: { 
        name: "location",
        type: "geo",
        precision: 4
    }                   
},

и как я выполняю свой поиск

    contextSuggester: {
        prefix: req.body['q'],
        completion: {
            field: "context2",
            size : 7,
            skip_duplicates:true,
            contexts: {
              location: {
                  lat: 43.662,
                  lon: -79.380
              }
          },
            fuzzy: {
                fuzziness: "auto"
            }

        }
    }
...