Spec-Zone.ru › Django 2.1

GeoJSON сериализатор

GeoDjango предоставляет специальный сериализатор для формата GeoJSON. См. Сериализация объектов Django для получения дополнительной информации о сериализации.

Сериализатор geojson не предназначен для обратной загрузки данных, так как у него нет эквивалентного десериализатора. Например, вы не можете использовать loaddata для повторной загрузки выходных данных, созданных этим сериализатором. Если вы планируете повторную загрузку выходных данных, используйте обычный сериализатор JSON вместо этого.

В дополнение к параметрам сериализатора json, сериализатор geojson принимает следующие дополнительные параметры, когда вызывается serializers.serialize():

  • geometry_field: Строка, содержащая имя поля геометрии, используемого для ключа geometry объекта GeoJSON. Это необходимо только в том случае, если у вашей модели более одного геометрического поля и вы не хотите использовать первое определённое геометрическое поле (по умолчанию выбирается первое геометрическое поле).
  • srid: SRID, используемый для содержимого geometry. По умолчанию значение 4326 (WGS 84).

Параметр fields может использоваться для ограничения полей, которые будут присутствовать в ключе properties, так как он работает со всеми другими сериализаторами.

Пример:

from django.core.serializers import serialize
from my_app.models import City

serialize('geojson', City.objects.all(),
          geometry_field='point',
          fields=('name',))

Выведет:

{
  'type': 'FeatureCollection',
  'crs': {
    'type': 'name',
    'properties': {'name': 'EPSG:4326'}
  },
  'features': [
    {
      'type': 'Feature',
      'geometry': {
        'type': 'Point',
        'coordinates': [-87.650175, 41.850385]
      },
      'properties': {
        'name': 'Chicago'
      }
    }
  ]
}

Когда параметр fields не указан, сериализатор geojson добавляет ключ pk в словарь properties со значением первичного ключа объекта.

© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/2.1/ref/contrib/gis/serializers/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API