GeoDjango¶
Django je vyspělý webový framework napsaný v jazyce Python, který podporuje rychlý vývoj a čisté, pragmatické konstrukce. Django je dnes v komunitě Pythonu velice populární a existuje množství rozšíření. Jedním takovým rozšířením je i tzv. GeoDjango
django.contrib.gis (GeoDjango) rozšiřuje datové modely používané v Django o typy geometrií. Pro ukládání používá buď databázi PostGIS nebo SpatialLite.
GeometryField
PointField
LineStringField
PolygonField
MultiPointField
MultiLineStringField
MultiPolygonField
GeometryCollectionField
RasterField
Definice modelu¶
Příklad definice modelu s geometrickým atributem
from django.contrib.gis.db import models
class Street(models.Model):
name = models.CharField(max_length=50)
width = models.FloatField()
geometry = models.LineStringField()
Závislosti¶
Jako databázový backend používá GeoDjango PostGIS, SpatiaLite ale i další databáze. Následující tabulka ukazuje další potřebné knihovny, pro různé verze databází:
Databáze |
Požadované knihovny |
Verze databází |
Poznámka |
---|---|---|---|
PostgreSQL |
GEOS, GDAL, PROJ.4, PostGIS |
9.3+ |
Vyžaduje PostGIS. |
MySQL |
GEOS, GDAL |
5.5+ |
Není kompatibilní s OGC; omezená funkcionalita |
Oracle |
GEOS, GDAL |
12.1+ |
Express Edition (XE) není podporována |
SQLite |
GEOS, GDAL, PROJ.4, SpatiaLite |
3.6.+ |
Vyžaduje SpatiaLite 4.0+ |
GeoDjango dále závisí na následujících knihovnách
GDAL pro zpracování dat
GEOS pro prostorové topologické operace
PROJ.4 pro souřadnicové transformace
Todo
Tato část je zatím pahýl a potřebuje rozšířit.