Как проверить соединение с базой данных в Django? - PullRequest
3 голосов
/ 01 августа 2011

Как проверить соединение с базой данных для Django?Например, чтобы убедиться, что имя пользователя и пароль базы данных верны.

Или, если это проще, где я могу "перехватить" ошибку базы данных при сбое соединения с базой данных?

У меня естьсценарий, в котором параметры подключения к базе данных определяются пользователем в форме.Мне нужно убедиться, что имя пользователя / пароль верны, и база данных должна успешно подключиться, прежде чем продолжить.

Кажется, я нигде не могу найти документацию, поскольку в большинстве статей предполагается, что соединение с базой данных всегда успешно.

Заранее спасибо.

1 Ответ

4 голосов
/ 01 августа 2011

Напишите промежуточное ПО («Как Django обрабатывает запрос») , которое проверит соединение с базой данных и перенаправит на вашу форму редактирования.

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' для производительности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...