Memasang PostGIS¶
PostGIS menambahkan dukungan obyek geografis pada PostgreSQL, merubah itu menjadi basisdata spasial. GEOS, PROJ dan GDAL harus dipasang sebelum membangun PostGIS. Anda mungkin juga butuh pustaka-pustaka tambahan, lihat PostGIS requirements.
The psycopg or psycopg2 module is required for use as the database adapter when using GeoDjango with PostGIS.
On Debian/Ubuntu, you are advised to install the following packages:
postgresql-x
, postgresql-x-postgis-3
, postgresql-server-dev-x
,
and python3-psycopg3
(x matching the PostgreSQL version you want to
install). Alternately, you can build from source. Consult the
platform-specific instructions if you are on macOS or Windows.
Support for psycopg
3.1.8+ was added.
Pasca-pemasangan¶
Membuat basisdata spasial¶
PostGIS 2 includes an extension for PostgreSQL that's used to enable spatial functionality:
$ createdb <db name>
$ psql <db name>
> CREATE EXTENSION postgis;
Pengguna basisdata harus super pengguna untuk menjalankan CREATE EXTENSION postgis;
. Perintah berjalan selama pengolahan migrate
. Sebuah cara lain adalah untuk menggunakan tndakan perpindahan dalam proyek anda:
from django.contrib.postgres.operations import CreateExtension
from django.db import migrations
class Migration(migrations.Migration):
operations = [CreateExtension("postgis"), ...]
If you plan to use PostGIS raster functionality on PostGIS 3+, you should also
activate the postgis_raster
extension. You can install the extension using
the CreateExtension
migration
operation, or directly by running CREATE EXTENSION postgis_raster;
.
GeoDjango saat ini tidak mempengaruhi PostGIS topology functionality apapun. Jika anda berencana untuk menggunakan fitur-fitur tersebut pada beberapa titik, anda dapat juga memasang tambahan postgis_topology
dengan menerbitkan CREATE EXTENSION postgis_topology;
.
Mengelola basisdata¶
To administer the database, you can either use the pgAdmin III program
(geodjango
spatial database and user, the following may be executed from
the SQL Shell as the postgres
user:
postgres# CREATE USER geodjango PASSWORD 'my_passwd';
postgres# CREATE DATABASE geodjango OWNER geodjango;