【发布时间】:2020-02-06 08:10:01
【问题描述】:
我有一个从非 django 应用程序创建的数据库,并定义了如下所示的数据库连接信息
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': os.environ.get('POSTGRES_DB'),
'USER': os.environ.get('POSTGRES_USER'),
'PASSWORD': os.environ.get('POSTGRES_PASSWORD'),
'HOST': os.environ.get('POSTGRES_HOST'),
'PORT': os.environ.get('POSTGRES_PORT'),
}
}
不幸的是,当我迁移 django admin 相关的表时,它们都进入了默认数据库。
我知道可以声明多个数据库并将读写操作分开到不同的数据库;但是,我想做的是将所有默认的 django admin 相关表创建到另一个数据库中。假设我声明了第二个数据库,如下所示,我如何确保 django admin 相关数据迁移到第二个数据库并在我登录 django admin 时从中读取?
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': os.environ.get('POSTGRES_DB'),
'USER': os.environ.get('POSTGRES_USER'),
'PASSWORD': os.environ.get('POSTGRES_PASSWORD'),
'HOST': os.environ.get('POSTGRES_HOST'),
'PORT': os.environ.get('POSTGRES_PORT'),
},
'admin':{
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': os.environ.get('ADMIN_POSTGRES_DB'),
'USER': os.environ.get('ADMIN_POSTGRES_USER'),
'PASSWORD': os.environ.get('ADMIN_POSTGRES_PASSWORD'),
'HOST': os.environ.get('ADMIN_POSTGRES_HOST'),
'PORT': os.environ.get('ADMIN_POSTGRES_PORT'),
}
}
【问题讨论】:
-
我也在为多个数据库而苦苦挣扎。也许您想查看我的question。我自己回答的,我想它也涵盖了你的问题。
标签: django