Skip to main content

Serve vectorial map layers with Django

Project description

django-geojson

See the documentation for more information.

django-geojson is a set of tools to manipulate GeoJSON with Django >= 3.2:

  • (De)Serializer for (Geo)Django objects, querysets and lists

  • Base views to serve GeoJSON map layers from models

  • GeoJSON model and form fields to avoid spatial database backends (compatible with django-leaflet for map widgets)

Documentation Status https://img.shields.io/pypi/v/django-geojson.svg https://img.shields.io/pypi/dm/django-geojson.svg https://travis-ci.org/makinacorpus/django-geojson.png?branch=master https://coveralls.io/repos/makinacorpus/django-geojson/badge.png?branch=master

AUTHORS

Version 1.X:

  • Daniel Sokolowski, serializer snippet

  • ozzmo, python 2.6 compatibility

makinacom

LICENSE

Lesser GNU Public License

CHANGELOG

4.1.0 (2024-05-13)

  • Drop Python 3.7, Django 3.2. Support Python 3.11 and 3.12, Django 4.2 and 5.0. #123

4.0.0 (2022-10-17)

  • Drop support for Python < 3.7 / Django < 3.2

  • Remove jsonfield dependency in favor of django.db.models.JSONField

    WARNING : This can break your migration. jsonfield used to create a text column for your json data when running ‘makemigrations’. However, django.db.models.JSONField creates a json column using database-backend specific column types (ie jsonb on postgresql). As such your model field that used to be a text column is now a jsonb column.

3.2.1 (2022-02-21)

  • Set default initial value to form field #116

3.2.0 (2021-04-15)

  • Support Django 3.2.

3.1.0 (2020-10-27)

  • Drop support for Python 2 and Django < 2.2

  • Fix warnings in Django 3.1

  • Use explicit srid in get_queryset #106

  • Add support for crs_type using the view options #107

3.0.0 (2020-03-02)

  • Fix with_modelname option after first iteration

  • Drop Django 1.11 support

  • jsonfield 3.0 support, drop 2.x support

2.12.0 (2018-12-05)

  • Change media type to ‘application/geo+json’

  • Make with_modelname option available in views

  • Drop Django 1.8 support.

  • Fixed unnecessary GDAL dependency. (#100, thanks @coredumperror)

2.11.0 (2017-12-05)

  • Django 2.0 support.

  • Fix setup.py encoding error.

2.10.0 (2017-02-28)

  • python 3.5 support.

2.9.1 (2016-08-22)

** Bug fixes **

  • Remove deprecation warnings with Django 1.8 (#78, thanks @AchilleAsh)

2.9.0 (2016-02-08)

** New features **

  • handle natural keys in views (#74, thanks Achille Ash!)

** Bug fixes **

  • Add Django 1.9 compatibility (#69, thanks Julien Le Sech!)

  • Fix imports in view.py to work without GEOS (#62, thanks Kevin Cooper!)

2.8.1 (2015-06-17)

** Bug fixes**

  • Fixed detection of GEOS (thanks Kevin Cooper!)

2.8.0 (2015-04-17)

** New features **

  • Support GeoJSON specification for named crs (thanks Alvin Lindstam)

** Bug fixes **

  • Add python 3.2 compatibility (thanks Nikolay Korotkiy, fixes #55)

  • Fix tests on Django >= 1.7 (thanks Manel Clos)

2.7.0 (2015-02-21)

** New features **

  • Add a with_modelname option to serializer

** Bug fixes **

  • change ‘fields’ to ‘properties’ in code example

  • Adds a warning for “Module version, as defined in PEP-0396

2.6.0 (2014-07-21)

** New features **

  • Django GeoJSON fields without libgeos installed (thanks Florent Lebreton)

  • Properties can be a tuple (fixes #34)

2.5.0 (2014-06-03)

** New features **

  • Add vector tiles view

  • Improved geojsonfeature template tag (fixes #15, #16)

  • Add various GeoJSON fields, for each geometry type

** Bug fixes **

  • Fix (de)serializers not being usable from command-line (fixes #28)

  • Fix import attempt for django-leaflet (fixes #27), by Seyi Ogunyemi

  • Fix missed SRID after copying a geometry in _handle_geom, by Biel Frontera

** Internal changes **

  • Specify django-leaflet minimal version for GeoJSON model field

  • Got rid of shapely for deserialization

2.4.0 (2014-03-22)

  • Add GeoJSON fields

2.3.0 (2014-02-08)

  • Python 3 support (thanks @amarandon)

  • Add bbox at feature level (thanks @7wonders)

2.2.0 (2013-12-18)

  • Deserialization: add ability to specify model name as option (thanks @Vross)

  • Deserialization: look-up ìd value in properties whe missing at feature level: (thanks @Vross)

2.1.1 (2013-08-21)

  • Set default SRID to 4326 in generic GeoJSON views.

2.1.0 (2013-08-19)

  • Serialize reversed relations using natural keys (fixes #8)

  • Support empty geometries (None or NULL in Db)

  • Fix serializing property in upper class

2.0.1 (2013-07-10)

  • Fix usage of simplify.

  • Expose force2d option in view

  • Allow to have pk or id in properties if explicitly listed

2.0.0 (2013-07-09)

  • Complete rewrite using @jeffkistler and @glenrobertson code

  • CRS is added to GeoJSON ouput by default

  • Ability to build pk dynamically by passing a lambda

  • Ability to provide a bbox

  • Ability to use Django natural keys

  • Support of ValuesQuerySet

  • Support of ForeignKey and ManyToMany

  • Added force2d option

** Backwards incompatible changes **

  • Geom field is not guessed automatically : Use geometry_field option, default is 'geom'.

  • no more pk in properties : use feature id, or list pk in properties explicitly.

  • fields list in GeoJSONLayer was renamed properties.

1.2.0 (2013-05-22)

  • Shapely is now optional (used for deserialization only)

  • Add Django to requirements

  • Skip a step in GeoJSON conversion of geometries (fixes #6)

1.1.0 (2013-03-06)

  • Django 1.5 support

  • Fix template tag geojsonfeature on empty geometries

1.0.0 (2012-08-03)

  • Initial working version.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_geojson-4.1.0.tar.gz (20.9 kB view details)

Uploaded Source

Built Distribution

django_geojson-4.1.0-py3-none-any.whl (22.7 kB view details)

Uploaded Python 3

File details

Details for the file django_geojson-4.1.0.tar.gz.

File metadata

  • Download URL: django_geojson-4.1.0.tar.gz
  • Upload date:
  • Size: 20.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.19

File hashes

Hashes for django_geojson-4.1.0.tar.gz
Algorithm Hash digest
SHA256 d044803ef8ce5039d89a5c53ecf6cb9dd0068acb31ceade041f6c14b1b2a723a
MD5 50280a7b23f3e57fb00be3a54d7d63e6
BLAKE2b-256 b9659a3df3ecbc78d5d3f5de240d87d689466012a17690f624febb95178d776e

See more details on using hashes here.

File details

Details for the file django_geojson-4.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for django_geojson-4.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 27cb3dc94f448300157d05646a8d3ff14e9e36a58181c47a654e307c449fd9da
MD5 ad429ee0fe7e284c4364682e150071d0
BLAKE2b-256 46449e9763876dc137bddcf44ee5650b7e5b4bd2e72846d09967a15d5d55a6d0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page