Don't initialize PostGIS-specific stuff for non-db connections
Refs #16969.
This commit is contained in:
parent
3c10d1e64f
commit
7e714827ea
|
@ -1,3 +1,4 @@
|
|||
from django.db.backends.creation import NO_DB_ALIAS
|
||||
from django.db.backends.postgresql_psycopg2.base import DatabaseWrapper as Psycopg2DatabaseWrapper
|
||||
from django.contrib.gis.db.backends.postgis.creation import PostGISCreation
|
||||
from django.contrib.gis.db.backends.postgis.introspection import PostGISIntrospection
|
||||
|
@ -7,6 +8,7 @@ from django.contrib.gis.db.backends.postgis.operations import PostGISOperations
|
|||
class DatabaseWrapper(Psycopg2DatabaseWrapper):
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(DatabaseWrapper, self).__init__(*args, **kwargs)
|
||||
self.creation = PostGISCreation(self)
|
||||
self.ops = PostGISOperations(self)
|
||||
self.introspection = PostGISIntrospection(self)
|
||||
if kwargs.get('alias', '') != NO_DB_ALIAS:
|
||||
self.creation = PostGISCreation(self)
|
||||
self.ops = PostGISOperations(self)
|
||||
self.introspection = PostGISIntrospection(self)
|
||||
|
|
|
@ -14,6 +14,7 @@ from .utils import truncate_name
|
|||
# The prefix to put on the default database name when creating
|
||||
# the test database.
|
||||
TEST_DATABASE_PREFIX = 'test_'
|
||||
NO_DB_ALIAS = '__no_db__'
|
||||
|
||||
|
||||
class BaseDatabaseCreation(object):
|
||||
|
@ -44,7 +45,7 @@ class BaseDatabaseCreation(object):
|
|||
backend = load_backend(settings_dict['ENGINE'])
|
||||
nodb_connection = backend.DatabaseWrapper(
|
||||
settings_dict,
|
||||
alias='__no_db__',
|
||||
alias=NO_DB_ALIAS,
|
||||
allow_thread_sharing=False)
|
||||
return nodb_connection
|
||||
|
||||
|
|
Loading…
Reference in New Issue