GeoDjango

Django MongoDB Backend supports GeoDjango.

Spatial fields

Each model field stores data as GeoJSON objects.

All fields have a 2dsphere index created on them.

Spatial lookups

Added in version 6.0.1.

The following spatial lookups are supported:

For all lookups, the lookup value must be a geometry object (e.g. Point, LineString, etc.) or a geometry collection (e.g. MultiPoint, MultiLineString, etc.). MongoDB does not support expressions (F, Subquery, etc.) for spatial lookup values.

Raw spatial queries

You can use any of the geospatial query operators or the geospatial aggregation pipeline stage in raw_aggregate() queries.

Configuration

  1. Install the necessary Geospatial libraries (GEOS and GDAL).

  2. Add django.contrib.gis to INSTALLED_APPS in your settings. This is so that the gis templates can be located – if not done, then features such as the geographic admin or KML sitemaps will not function properly.

Limitations