如何在Django中测试数据库连接?

时间:2011-08-01 04:58:26

标签: python database django

如何测试Django的数据库连接?例如,确保数据库的用户名和密码正确无误。

或者如果它更容易,当数据库连接失败时,我在哪里“捕获”数据库错误?

我有一个场景,用户在表单中定义数据库连接参数。我需要确保用户名/密码正确,数据库必须成功连接才能继续。

我似乎无法在任何地方找到任何文档,因为大多数文章都假设数据库连接始终是成功的。

提前致谢。

1 个答案:

答案 0 :(得分:4)

写一个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'以提高性能。