Можно ли делать геопространственные запросы в sanity.io? - PullRequest
0 голосов
/ 25 февраля 2019

Я обнаружил, что sanity поддерживает Тип Geopoint , но я не смог найти никакой информации, если возможно выполнить какую-либо операцию фильтрации для этого типа.Возможны ли геопространственные запросы?

1 Ответ

0 голосов
/ 26 февраля 2019

Упрощенный синтаксис для геопространственных запросов включен в план.

Если вы, например, хотите сделать ограниченный запрос по широте / ширине, вы можете сделать это следующим образом, учитывая схему:

export default {
   name: 'aDocumentType',
   type: 'document',
   fields: [
    {
       name: 'position',
       type: 'geopoint'
    }
   ]
}

Допустим, мы использовали Mapbox и имеем объект LngLatBounds .Теперь мы можем сделать запрос, используя params , который сопоставляется с этим объектом:

*[
  _type == "aDocumentType &&
  position.lng < $bounds._ne.lng &&
  position.lat < $bounds._ne.lat &&
  position.lng > $bounds._sw.lng &&
  position.lat > $bounds._sw.lat &&
]
...