Django email: было ли установлено соединение с SMTP-сервером?

Что я пытаюсь проверить, было ли уже открыто соединение, и если нет, то открыть его. Я делаю

connection = mail.get_connection()

connection.open()

для получения соединения и его открытия. Затем я отправляю электронную почту и закрываю его при определенном условии. Есть ли способ проверить, было ли уже открыто соединение?

connection = mail.get_connection()

После этой строки connection представляет settings.EmailBackend объект

Проверьте это

Теперь ваш объект connection имеет атрибут connection, который представляет соединение уже открыто или нет

проверьте это и это

В общих чертах логика будет

if connection.connection :
   # already open
else:
   # not open

Также я добавлю один пункт,

Когда вы делаете connection.open(), django сам проверяет, открыто ли уже соединение или нет, и поступает соответствующим образом.

Смотрите это из репо django

Вернуться на верх