Avant Geodjango fut Django
Django est framework gratuit et open source de python. Il s’agit d’un ensemble de modules (composants) qui facilite le développement de sites web plus rapidement. Aujourd’hui Django est un des avantages principaux liés à l’apprentissage de python. L’idée originelle était de permettre le développement de sites web complets, interfacés avec une base de données, dans un laps de temps très court. Disposant d’une documentation très fournie et basée sur une communauté très active, Django est selon ses concepteurs : » le framework web pour les perfectionnistes sous pression « .
Place à Geodjango
Geodjango est la version géographique du framework Django qui le transforme en un système géographique Web complet. Il vise à faciliter au maximum la création d’application Web GIS et l’exploitation du potentiel de données géolocalisées.
Puisque Geodjango tire ses racines de django, il est basé sur son ORM. On entend par ORM (Object Relational Mapping), « un objet cartographique relationnel type de programme informatique qui se place en interface entre un programme applicatif et une base de données relationnelle pour simuler une base de données orientée objet » (source : Wikipédia).
Ainsi, Geodjango permet de manipuler des données spatiales (vectorielles, matricielles, attributaires) dans des bases de données géospatiales telles que PostGIS, Postgresql ou MySQL, effectuer des requêtes spatiales et manipuler les informations contenues dans celles-ci.
L’accès à ces fonctionnalités reste conditionné par l’installation préalable de certaines bibliothèques et librairies comme :
- GEOS : Geometry Engine Open Source qui implémente la spécification OCG Simple Feature for SQL.
- GDAL : Geospatial Data Abstraction Library. Il s’agit d’une bibliothèque à code source ouvert qui utilise des formats de données SIG.
- PROJ.4, qui correspond à la bibliothèque de projections cartographiques et implémente les API requises pour travailler avec des systèmes de référence spatiale et des projections.
L’une des principales forces de Geodjango réside dans la pluralité des interfaces de programmation d’applications (API). On peut en citer : API modèle, API base de données, API formulaire, API QuerySet GIS, API GEOS, API GDAL, etc.
Quelques sites utilisant Geodjango
596acres
596acres crée des outils pour aider les voisins à voir les terrains vacants comme des opportunités et à créer les espaces verts nécessaires, qui deviennent des points focaux pour l’organisation communautaire et l’engagement civique. Il se base sur une plateforme cartographique très interactive et robuste reposant sur Geodjango. http://596acres.org/
Mammoth Lakes Trail System
Le réseau de sentiers Mammoth Lakes offre des possibilités de loisirs illimitées sur plus de 300 milles de sentiers. Des plateaux granitiques aux lacs troutés en passant par les forêts de pins et les prairies alpines, il y en a pour tous les goûts, pour toutes les saisons, tous les goûts et tous les goûts, qu’ils soient motorisés ou non.
Sources :
https://python.doctor/page-django-introduction-python
https://www.pythonforbeginners.com/learn-python/what-is-django/
https://medium.com/swlh/what-is-django-and-why-is-it-so-popular-2b225620cca0
https://www.djangoproject.com/
https://tutorial.djangogirls.org/en/django/
https://docs.djangoproject.com/fr/2.2/intro/overview/
https://docs.djangoproject.com/fr/2.1/ref/contrib/gis/
https://groups.google.com/forum/#!topic/geodjango/J6invftKRu0
https://matthewdaly.co.uk/blog/2016/03/26/building-a-location-aware-web-app-with-geodjango/
https://fr.wikipedia.org/wiki/Mapping_objet-relationnel
https://www.techiediaries.com/django-gis-geodjango/
https://realpython.com/location-based-app-with-geodjango-tutorial/
https://django.readthedocs.io/en/2.2.x/ref/contrib/gis/db-api.html