Installation av GeoDjangoLink to this heading
ÖversiktLink to this heading
I allmänhet kräver installationen av GeoDjango:
spatial_databas
Detaljer för varje krav och installationsanvisningar finns i avsnitten nedan. Dessutom finns plattformsspecifika instruktioner tillgängliga för:
fönster
KravLink to this heading
Python och DjangoLink to this heading
Eftersom GeoDjango ingår i Django hänvisar vi till Djangos installationsinstruktioner för mer information om hur du installerar.
Spatial databasLink to this heading
PostgreSQL (med PostGIS), MySQL, Oracle och SQLite (med SpatiaLite) är de spatiala databaser som för närvarande stöds.
De geospatiala bibliotek som krävs för en GeoDjango-installation beror på den spatiala databas som används. Följande listar bibliotekskraven, de versioner som stöds och eventuella anmärkningar för var och en av de databasbackendar som stöds:
Databas |
Krav på bibliotek |
Versioner som stöds |
Anteckningar |
|---|---|---|---|
PostgreSQL |
GEOS, GDAL, PROJ, PostGIS |
15+ |
Kräver PostGIS. |
MySQL |
GEOS, GDAL |
8.4+ |
|
Oracle |
GEOS, GDAL |
19+ |
XE stöds inte. |
SQLite |
GEOS, GDAL, PROJ, SpatiaLite |
3.37.0+ |
Kräver SpatiaLite 4.3+ |
Se även `den här jämförelsematrisen`__ på OSGeo Wiki för PostgreSQL / PostGIS /GEOS / GDAL möjliga kombinationer.
InstallationLink to this heading
Geospatiala bibliotekLink to this heading
Installation av databasLink to this heading
DATABASER konfigurationLink to this heading
Ange inställningen ENGINE till en av spatial backends.
Lägg till django.contrib.gis i INSTALLED_APPSLink to this heading
Precis som andra Django Contrib-applikationer behöver du bara lägga till django.contrib.gis till INSTALLED_APPS i dina inställningar. Detta är så att gis-mallarna kan lokaliseras - om det inte görs kommer funktioner som den geografiska administratören eller KML-webbplatskartor inte att fungera korrekt.
FelsökningLink to this heading
Om du inte hittar lösningen på ditt problem här kan du delta i gemenskapen! Detta kan du göra:
Ställ din fråga på forumet `GeoDjango`__.
Skapa ett ärende på `Django trac`__ om du tror att det finns ett fel. Ange en fullständig problembeskrivning och använda versioner, och ange komponenten som ”GIS”.
Inställningar för biblioteksmiljöLink to this heading
Det överlägset vanligaste problemet vid installation av GeoDjango är att de externa delade biblioteken (t.ex. för GEOS och GDAL) inte kan hittas. [Orsaken till detta problem är vanligtvis att operativsystemet inte känner till den katalog där biblioteken som byggts från källan installerades.
I allmänhet kan bibliotekssökvägen ställas in för varje användare genom att ange en miljövariabel eller genom att konfigurera bibliotekssökvägen för hela systemet.
miljövariabeln LD_LIBRARY_PATHLink to this heading
En användare kan ange denna miljövariabel för att anpassa de bibliotekssökvägar som ska användas. Den typiska bibliotekskatalogen för programvara som byggts från källkod är /usr/local/lib. Därför behöver /usr/local/lib inkluderas i variabeln LD_LIBRARY_PATH. Användaren kan till exempel lägga följande i sin bash-profil:
export LD_LIBRARY_PATH=/usr/local/lib
Ställa in sökväg för systembibliotekLink to this heading
På GNU/Linux-system finns vanligen en fil i /etc/ld.so.conf, som kan inkludera ytterligare sökvägar från filer i en annan katalog, till exempel /etc/ld.so.conf.d. Lägg som root-användare till den anpassade bibliotekssökvägen (som /usr/local/lib) på en ny rad i ld.so.conf. Detta är ett exempel på hur det kan göras:
$ sudo echo /usr/local/lib >> /etc/ld.so.conf
$ sudo ldconfig
För OpenSolaris-användare kan systemets bibliotekssökväg ändras med verktyget crle. Kör crle utan alternativ för att se den aktuella konfigurationen och använd crle -l för att ange den nya bibliotekssökvägen. Var ytterst försiktig när systemets bibliotekssökväg ändras:
# crle -l $OLD_PATH:/usr/local/lib
Installera binutilsLink to this heading
GeoDjango använder funktionen find_library (från Python-modulen ctypes.util) för att hitta bibliotek. Rutinen find_library använder ett program med namnet objdump (del av paketet binutils) för att verifiera ett delat bibliotek på GNU/Linux-system. Om binutils inte är installerat på Linux-systemet kanske därför Pythons ctypes inte kan hitta biblioteket, även om bibliotekssökvägen är korrekt angiven och de geospatiala biblioteken är perfekt byggda.
Paketet binutils kan installeras på Debian- och Ubuntu-system med följande kommando:
$ sudo apt-get install binutils
På samma sätt på Red Hat- och CentOS-system:
$ sudo yum install binutils
Plattformsspecifika instruktionerLink to this heading
macOSLink to this heading
På grund av de olika paketeringssystemen som finns tillgängliga för macOS har användarna flera olika alternativ för att installera GeoDjango. Dessa alternativ är:
Postgres.app (enklast och rekommenderas)
bygga_från_källa
Detta avsnitt innehåller även instruktioner för att installera en uppgraderad version av Python från paket som tillhandahålls av Python Software Foundation, men detta är inte nödvändigt.
PythonLink to this heading
Även om macOS levereras med Python installerat kan användare använda `ramverksinstallationsprogram`__ från Python Software Foundation. En fördel med installationsprogrammet är att macOS Python förblir ”orörd” för intern användning i operativsystemet.
Postgres.appLink to this heading
Postgres.app är en fristående PostgreSQL-server som innehåller PostGIS-tillägget. Du behöver även installera gdal med Hemmabryggare.
När du har installerat Postgres.app lägger du till följande i din .bash_profile så att du kan köra paketets program från kommandoraden. Ersätt X.Y med versionen av PostgreSQL i Postgres.app som du installerade:
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/X.Y/bin
Du kan kontrollera om sökvägen är korrekt inställd genom att skriva which psql i en terminalprompt.
HemmabryggareLink to this heading
`Homebrew`__ tillhandahåller ”recept” för att bygga binära filer och paket från källan. Det ger recept för GeoDjango-förutsättningarna på Macintosh-datorer som kör macOS. Eftersom Homebrew fortfarande bygger programvaran från källan krävs Xcode.
Sammanfattning:
$ brew install postgresql
$ brew install postgis
$ brew install gdal
FinkLink to this heading
`Kurt Schwehr`__ har varit snäll nog att skapa GeoDjango-paket för användare av `Fink`__-paketsystemet. olika paket finns tillgängliga (börjar med django-gis), beroende på vilken version av Python du vill använda.
MacPortsLink to this heading
`MacPorts`__ kan användas för att installera GeoDjangos förutsättningar på datorer som kör macOS. Eftersom MacPorts fortfarande bygger programvaran från källkod krävs Xcode.
Sammanfattning:
$ sudo port install postgresql15-server
$ sudo port install geos
$ sudo port install proj6
$ sudo port install postgis3
$ sudo port install gdal
FönsterLink to this heading
Fortsätt genom följande avsnitt i tur och ordning för att installera GeoDjango på Windows. I denna handledning kommer vi att installera 64-bitarsversioner av varje applikation.
PythonLink to this heading
Installera en 64-bitarsversion av Python. Se Installera Python för ytterligare information.
PostgreSQLLink to this heading
Hämta det senaste `installationsprogrammet för PostgreSQL 15.x`__ från webbplatsen `EnterpriseDB`__. Kör installationsprogrammet efter hämtningen, följ anvisningarna på skärmen och behåll standardalternativen om du inte känner till konsekvenserna av att ändra dem.
När installationsprogrammet är klart kommer det att fråga om ”Launch Stack Builder at exit?” – håll detta markerat, eftersom det är nödvändigt att installera PostGIS.
PostGISLink to this heading
Från Stack Builder (för att köra utanför installationsprogrammet, ), välj från rullgardinsmenyn och klicka på nästa. Expandera menyträd och välj .
När du har klickat på nästa uppmanas du att bekräfta det valda paketet och ”Download directory”. Klicka på nästa igen, detta kommer att ladda ner PostGIS och du kommer att bli ombedd att klicka på nästa för att starta PostGIS-installationsprogrammet. Välj standardalternativ under installationen. Installationsprocessen innehåller fyra Ja/Nej-dialogrutor, standardalternativet för alla fyra är ”Nej”.
OSGeo4WLink to this heading
Installationsprogrammet OSGeo4W hjälper till att installera de PROJ-, GDAL- och GEOS-bibliotek som GeoDjango kräver. Hämta först `installationsprogrammet OSGeo4W`_ och kör det. Välj och klicka på Nästa. Kontrollera i listan ”Select Packages” att GDAL är valt. Om andra paket är aktiverade som standard krävs de inte av GeoDjango och kan avmarkeras säkert. När du har klickat på Nästa och godkänt licensavtalen hämtas och installeras paketen automatiskt, och därefter kan du avsluta installationsprogrammet.
Ändra Windows-miljönLink to this heading
För att kunna använda GeoDjango måste du lägga till dina OSGeo4W-kataloger i Windows-systemets Path samt skapa miljövariablerna GDAL_DATA och PROJ_LIB. Följande uppsättning kommandon, som kan köras med cmd.exe, gör detta. Starta om enheten när detta är klart så att de nya miljövariablerna identifieras:
set OSGEO4W_ROOT=C:\OSGeo4W
set GDAL_DATA=%OSGEO4W_ROOT%\apps\gdal\share\gdal
set PROJ_LIB=%OSGEO4W_ROOT%\share\proj
set PATH=%PATH%;%OSGEO4W_ROOT%\bin
reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /f /d "%PATH%"
reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v GDAL_DATA /t REG_EXPAND_SZ /f /d "%GDAL_DATA%"
reg ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PROJ_LIB /t REG_EXPAND_SZ /f /d "%PROJ_LIB%"
Installera Django och konfigurera databasenLink to this heading
Installera Django på ditt system. Det rekommenderas att du skapar en virtuell miljö för varje projekt du skapar.
psycopgLink to this heading
Python-modulen `` psycopg`` tillhandahåller gränssnittet mellan Python och PostgreSQL-databasen. psycopg kan installeras via pip inom din virtuella Python-miljö:
...\> py -m pip install psycopg
Fotnoter