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

Ren*_*nyi 5 python database django

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

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

我有一个场景,其中数据库连接参数是由用户在表单中定义的。在继续之前,我需要确保用户名/密码正确并且数据库必须成功连接。

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

提前致谢。

jaz*_*azz 4

编写一个中间件(“Django 如何处理请求”),它将检查数据库连接并重定向到您的编辑表单。

class DbCheckMiddleware(object):

    def process_request(self, request):
        try:
            "Some DB Code"
            success = True
        except:
            success = False                

        request.db_connection_successful = success
Run Code Online (Sandbox Code Playgroud)

缓存“db_connection_successful”以提高性能。