Можно ли делать геопространственные запросы в sanity.io?

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


person Vladimír Polák    schedule 25.02.2019    source источник


Ответы (1)


В планах развития более простой синтаксис для геопространственных запросов.

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

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

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

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