Джанго не отправляет электронные письма - PullRequest
0 голосов
/ 16 февраля 2019

У меня есть простое приложение django, и я не могу отправлять электронные письма.В моем файле настроек у меня есть:

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'MyHost@gmail.com'
EMAIL_HOST_PASSWORD = 'Mypassword'
DEFAULT_FROM_EMAIL = 'From Email'

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

Код для отправки электронного письма при создании модели:

@receiver(post_save, sender = Alerta)
def my_callback(sender, created, **kwargs):
    if created:
        from_email = settings.DEFAULT_FROM_EMAIL
        print(from_email)
        try:
            send_mail(
                'Fogo Florestal',
                "Mensagem",
                from_email,
                ["some_destination@gmail.com"],
                fail_silently=False,
            )
        except Exception as e:
            print(e)

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

У меня есть другое веб-приложение, которое использует ту же процедуру отправки электронной почты и работает правильно.

Кто-нибудь сталкивался с подобной проблемой?Я использую Python 3.5 и Django 2.1

1 Ответ

0 голосов
/ 17 февраля 2019

Попробуйте добавить это в settings.py:

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
...