Django-使用PostGIS数据库和PostgreSQL数据库,我需要2个数据库吗?

Django-使用PostGIS数据库和PostgreSQL数据库,我需要2个数据库吗?,django,geodjango,django-postgresql,Django,Geodjango,Django Postgresql,我目前使用的是一个标准设置的PostgreSQL数据库 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql_psycopg2', 'NAME': 'postgres', 'USER': 'postgres', 'PASSWORD': password, 'HOST': 'localhost', 'PORT':

我目前使用的是一个标准设置的PostgreSQL数据库

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'postgres',
        'USER': 'postgres',
        'PASSWORD': password,
        'HOST': 'localhost',
        'PORT': '',
    }
}
我的问题是,我是否可以继续使用默认的postgres设置,并在shell中执行
CREATE EXTENSION postgis
,以访问postgis功能?或者我需要单独添加postgis数据库,如下所示:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'postgres',
        'USER': 'postgres',
        'PASSWORD': password,
        'HOST': 'localhost',
        'PORT': '',
    }
    'geodata': {
         'ENGINE': 'django.contrib.gis.db.backends.postgis',
         'NAME': 'geodjango',
         'USER': 'geo',
    },
}

您可以继续使用默认的postgres设置,只需将引擎更改为:


啊,所以我猜
django.contrib.gis.db.backends.postgis
是一个扩展,它包含了
django.db.backends.postgresql\u psycopg2
中的所有内容,以及特定于地理位置的功能?你说得对。django.contrib.gis.db.backends.postgis只是扩展了django.db.backends.postgresql_psycopg2以添加postgis类型。
DATABASES = {
    'default': {
        'ENGINE': 'django.contrib.gis.db.backends.postgis',
        'NAME': 'postgres',
        'USER': 'postgres',
        'PASSWORD': password,
        'HOST': 'localhost',
        'PORT': '',
    }
}