Я создаю поисковую систему для поиска мест из огромной базы данных, хранящейся в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"
}
}
}