【发布时间】:2017-12-27 15:53:14
【问题描述】:
据我所知,如果 settings.py 中设置的任何数据库在应用程序启动时关闭,则 Django 应用程序将无法启动。无论如何让Django“延迟加载”初始数据库连接?
我配置了两个数据库,其中一个有点不稳定,有时可能会关闭几秒钟,但它仅用于应用程序的某些特定用例。正如您可以想象的那样,我不希望所有应用程序因此而无法启动。有什么解决办法吗?
我使用的是 Django 1.6.11,我们还使用 Django South 进行数据库迁移(以防它以某种方式相关)。
【问题讨论】:
-
我认为你错了。当您启动
./manage.py runserver时,Django 不一定会访问数据库。您的模块中可能有代码在加载模块时而不是在视图运行时引起数据库查询。 -
确定吗?
Performing system checks...是做什么的?它不检查模型并且这不意味着数据库正在启动吗?事实上,引用docs.djangoproject.com/en/1.11/topics/checks:字段、模型、模型管理器和数据库后端都实现了一个 check() 方法 -
我想知道你是否觉得我的回答有帮助
标签: python mysql django django-models django-south