Skip to main content

Serve vectorial map layers with Django

Project description

django-geojson

INSTALL

pip install django-geojson

USAGE

GeoJSON layer view

Very useful for web mapping :

from djgeojson.views import GeoJSONLayerView


class MeetingLayer(GeoJSONLayerView):
    model = Meeting
    fields = ('title', 'datetime',)
    # Options
    srid = 4326     # projection
    precision = 4   # float
    simplify = 0.5  # generalization

Consume the vector layer as usual, for example, with Leaflet :

var layer = L.GeoJSON();
map.addLayer(layer);
$.getJSON('{% url viewname %}', function (data){
    layer.addData(data);
});

GeoJSON template filter

Will work either for a model, a geometry field or a queryset.

{% load geojson_tags %}

var feature = {{ object|geojsonfeature }};

var geom = {{ object.geom|geojsonfeature }};

var collection = {{ object_list|geojsonfeature }};

Dump GIS models

Register the serializer in your project :

# settings.py

SERIALIZATION_MODULES = {
    'geojson' : 'djgeojson.serializers'
}

Command-line dumpdata can export files, viewable in GIS software like QGis :

django dumpdata --format=geojson yourapp.Model > export.geojson

Works with loaddata as well, which can now import GeoJSON files.

AUTHORS

Relies massively on Sean Gillies’ geojson python module.

makinacom

LICENSE

  • Lesser GNU Public License

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-1.0.0.zip (14.0 kB view hashes)

Uploaded Source

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