searchkick: geo_distance_range: как фильтровать от X км до Y км? - PullRequest
0 голосов
/ 19 февраля 2019

этот вопрос о: https://github.com/ankane/searchkick

Я хотел бы знать, есть ли способ отфильтровать что-то, что содержит lat и lon, проиндексированные с использованием geo_distance_range (что не реализованов searchkick).

я уже использую location: { near: ... } }, который находится в read-me, до 1 км вокруг широты и долготы с:

Store.search(
  where: { 
    location: { 
      near: { 
        lat: lat, 
        lon: lng 
      }, 
      within: "1km" 
    } 
  },
  order: {
    sales_count: 'desc'
  },
  load: false
)

Допустим, я хочу магазины от 1км до 3км с учетом лат и lng https://www.elastic.co/guide/en/elasticsearch/reference/5.6/query-dsl-geo-distance-range-query.html

geo_distance_range: {
  from: "1km",
  to: "3km",
  'pin.location' => {
    lat: lat,
    lon: lng
  }
}

Но мне нужен второй запрос от 1км до 3км ... Я пытаюсь использовать body_options, но безуспешно.(я использую searchkick 2.5)

...