【发布时间】:2017-07-06 12:23:20
【问题描述】:
我的项目中有 2 个数据库,其中包含多个应用程序。除了一个应用程序之外的所有应用程序都使用默认数据库,另一个应用程序有一个单独的数据库。在我运行 makemigrations 和 ./manage.py migrate --database=separate_db_name 之后,我仍然有未应用的迁移等待默认数据库。
问题是我如何才能使此迁移仅对我的单独应用程序可见,而不是其他应用程序(使用默认数据库)。谢谢
这是我的路由器
class S3DatabaseRouter(object):
"""
Determine how to route calls for s3web_upload_dev database
"""
def db_for_read(self, model, **hints):
"""
Attempts to read s3web_upload models to go to s3web_upload_dev
"""
if model._meta.app_label == 's3web_upload':
return 's3web_upload_dev'
return None
def db_for_write(self, model, **hints):
"""
Attempts to write s3web_upload models to go to s3web_upload_dev
"""
if model._meta.app_label == 's3web_upload':
return 's3web_upload_dev'
return None
def allow_migrate(self, db, app_label, model_name=None, **hints):
"""
Make sure the s3web_upload app only appears in the 's3web_upload_dev' database
"""
if app_label == 's3web_upload':
return db == 's3web_upload_dev'
return None
【问题讨论】:
标签: python django postgresql