Spec-Zone.ru › Django 6.0

Установка PostGIS

PostGIS добавляет поддержку географических объектов в PostgreSQL, превращая его в пространственную базу данных. Перед сборкой PostGIS необходимо установить GEOS, PROJ и GDAL. Возможно, понадобятся и дополнительные библиотеки; см. требования PostGIS.

Для использования GeoDjango с PostGIS в качестве адаптера базы данных необходим модуль psycopg или psycopg2.

В Debian/Ubuntu рекомендуется установить следующие пакеты: postgresql-x, postgresql-x-postgis-3, postgresql-server-dev-x и python3-psycopg3 (x соответствует версии PostgreSQL, которую вы хотите установить). Кроме того, можно собрать из исходного кода. Если вы используете macOS или Windows, ознакомьтесь с инструкциями для соответствующей платформы.

После установки

Создание пространственной базы данных

PostGIS включает расширение для PostgreSQL, используемое для включения пространственных функций:

$ createdb  <db name>
$ psql <db name>
> CREATE EXTENSION postgis;

Чтобы выполнить CREATE EXTENSION postgis;, пользователь базы данных должен иметь права суперпользователя. Эта команда выполняется в процессе migrate. В качестве альтернативы можно использовать операцию миграции в проекте:

from django.contrib.postgres.operations import CreateExtension
from django.db import migrations


class Migration(migrations.Migration):
    operations = [CreateExtension("postgis"), ...]

Если вы планируете использовать растровые функции PostGIS, следует также активировать расширение postgis_raster. Установить расширение можно с помощью операции миграции CreateExtension или напрямую, выполнив CREATE EXTENSION postgis_raster;.

В настоящее время GeoDjango не использует функции топологии PostGIS. Если вы планируете использовать эти возможности в будущем, можно также установить расширение postgis_topology, выполнив CREATE EXTENSION postgis_topology;.

Управление базой данных

Для администрирования базы данных можно использовать программу pgAdmin III (Пуск ‣ PostgreSQL X ‣ pgAdmin III) или оболочку SQL (Пуск ‣ PostgreSQL X ‣ SQL Shell). Например, чтобы создать пространственную базу данных geodjango и пользователя, в оболочке SQL можно выполнить следующую команду от имени пользователя postgres:

postgres# CREATE USER geodjango PASSWORD 'my_passwd';
postgres# CREATE DATABASE geodjango OWNER geodjango;

© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/6.0/ref/contrib/gis/install/postgis/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API