Serve vectorial map layers with Django
Project description
django-geojson
INSTALL
pip install django-geojson
If you need to load data from GeoJSON files (deserialize), you’ll also need shapely
pip install "django-geojson [shapely]"
USAGE
Add djgeojson to your applications :
# settings.py
INSTALLED_APPS += (
'djgeojson',
)
(not required for views)
GeoJSON layer view
Very useful for web mapping :
# urls.py from djgeojson.views import GeoJSONLayerView ... url(r'^data.geojson$', GeoJSONLayerView.as_view(model=MushroomSpot), name='data'),
Consume the vector layer as usual, for example, with Leaflet :
var layer = L.GeoJSON();
map.addLayer(layer);
$.getJSON("{% url 'data' %}", function (data) {
layer.addData(data);
});
Inherit only if you need a reusable set of options :
# views.py
from djgeojson.views import GeoJSONLayerView
class MapLayer(GeoJSONLayerView):
# Options
precision = 4 # float
simplify = 0.5 # generalization
# urls.py
from .views import MapLayer, MeetingLayer
...
url(r'^mushrooms.geojson$', MapLayer.as_view(model=MushroomSpot, fields=('name',)), name='mushrooms')
Most common use-cases are low-fi precision, common list of fields, etc.
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.
LICENSE
Lesser GNU Public License
CHANGELOG
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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-geojson-1.2.0.zip.
File metadata
- Download URL: django-geojson-1.2.0.zip
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e349e71b18e2afc15566b83f591e443a3339b37874e32dd0bc9b6aaa00787efc
|
|
| MD5 |
a5485de74d84278b2c1b64e543a7df56
|
|
| BLAKE2b-256 |
8859019b998fef7df964f554d9bf4966097f6806ddf0a0186473c29f2fc69c9a
|