Skip to main content

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.2.0 (2025-10-03)

  • Drop Python 3.8, Django 4.0, and Django 4.1.

  • Support Python 3.13, Django 5.1 and Django 5.2.

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.

Metadata

Release files for django-geojson 4.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-geojson 4.2.0
File Size Uploaded
django_geojson-4.2.0.tar.gz 21.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-geojson 4.2.0
File Interpreter ABI Platform
django_geojson-4.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 43.9 kB

Release files / django_geojson-4.2.0.tar.gz

Download URL django_geojson-4.2.0.tar.gz
Size 21.1 kB
Tags Source
SHA-256 checksum
How to use checksums
1d35a22384c89165cfc5a47c3033b918b1035b86bd3862500a003e93cecb7816
BLAKE2b-256 checksum
How to use checksums
c694b7f83ffa37fbc4e8055243a298198858ead93d8d63c7e4c6aeae2b539765
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.21

Release files / django_geojson-4.2.0-py3-none-any.whl

Download URL django_geojson-4.2.0-py3-none-any.whl
Size 22.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bdee93c1915147cbd37ee6299c1eaa588d86693f8402f48b0803825eee6bf23b
BLAKE2b-256 checksum
How to use checksums
70fcf59aa9e7742cdada368582c9b16c3f007d046b9854f97fead8e7ee501e00
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.1 CPython/3.9.21

Release history Release notifications | RSS feed

This release

4.2.0 This release

2 release files

4.1.0

2 release files

4.0.0

2 release files

3.2.1

2 release files

3.2.0

2 release files

3.1.0

2 release files

3.0.0

1 release file

2.12.0

1 release file

2.11.0

1 release file

2.10.0

1 release file

2.9.1

1 release file

2.9.0

1 release file

2.8.1

1 release file

2.8.0

1 release file

2.7.0

1 release file

2.6.0

1 release file

2.5.0

1 release file

2.4.0

1 release file

2.3.0

1 release file

2.2.0

1 release file

2.1.1

1 release file

2.1.0

1 release file

2.0.1

1 release file

2.0.0

1 release file

1.2.0

1 release file

1.0.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page