在Django中开启/关闭数据库连接
我正在使用Django和Postgresql作为我的数据库管理系统。
我想设置一个选项,可以开启或关闭数据库连接。当在settings.py文件中把连接设置为关闭时,网站会显示一条消息,比如“维护模式”之类的。Django不会显示任何数据库连接错误的信息(也不会把这些错误邮件给管理员)。如果Django根本不尝试连接数据库,那就更好了。
1 个回答
3
也许创建一个中间件可以解决你的问题。把你新建的中间件“maintenancemiddleware”放在你设置中的middleware列表的最前面。
# code not tested, only for demonstration.
# maintenancemiddleware.py
from django.conf.settings import MAINTENANCE
class MaintenanceMiddleware(object):
def process_request(self, request):
if MAINTENANCE:
# redirect to a static url (like /media/maintenancemode.html)
更多信息:http://docs.djangoproject.com/en/1.2/topics/http/middleware/#topics-http-middleware