Spec-Zone.ru › Django 4.2

Установка PostGIS

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

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

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

Изменено в Django 4.2:

Добавлена поддержка psycopg 3.1.8+.

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

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

PostGIS 2 включает расширение для 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 3+, вы также должны активировать расширение postgis_raster. Вы можете установить расширение с помощью операции миграции CreateExtension или напрямую, выполнив CREATE EXTENSION postgis_raster;.

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

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

Для администрирования базы данных вы можете использовать программу pgAdmin III (Пуск ‣ PostgreSQL X ‣ pgAdmin III) или SQL Shell (Пуск ‣ PostgreSQL X ‣ SQL Shell). Например, чтобы создать пространственную базу данных geodjango и пользователя, можно выполнить следующее из SQL Shell как пользователь 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/4.2/ref/contrib/gis/install/postgis/

Spec-Zone.ru

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