【发布时间】:2011-10-17 04:27:14
【问题描述】:
如何测试 Django 的数据库连接?例如确保数据库的用户名和密码正确。
或者如果更简单,当数据库连接失败时,我在哪里“捕获”数据库错误?
我有一个场景,其中数据库连接参数是由用户在表单中定义的。我需要确保用户名/密码正确,并且数据库必须连接成功才能继续。
我似乎在任何地方都找不到任何文档,因为大多数文章都假设数据库连接总是成功的。
提前致谢。
【问题讨论】:
如何测试 Django 的数据库连接?例如确保数据库的用户名和密码正确。
或者如果更简单,当数据库连接失败时,我在哪里“捕获”数据库错误?
我有一个场景,其中数据库连接参数是由用户在表单中定义的。我需要确保用户名/密码正确,并且数据库必须连接成功才能继续。
我似乎在任何地方都找不到任何文档,因为大多数文章都假设数据库连接总是成功的。
提前致谢。
【问题讨论】:
写一个middleware ("How Django processes a request"),它将检查数据库连接并重定向到您的编辑表单。
class DbCheckMiddleware(object):
def process_request(self, request):
try:
"Some DB Code"
success = True
except:
success = False
request.db_connection_successful = success
缓存“db_connection_successful”以获得性能。
【讨论】: