Как отправлять электронные письма с помощью Django All auth?
Я пытаюсь отправлять электронные письма для регистрации/верификации аккаунта и т.д., используя django allauth, и это работало правильно во время разработки, используя консоль в качестве почтового бэкенда, однако теперь я пытаюсь отправить электронную почту, используя gmail, я получаю следующую ошибку:
SMTPAuthenticationError at /accounts/password/reset/ (535, b'5.7.8 Имя пользователя и пароль не приняты. Learn more at\n5.7.8 https://support.google.com/mail/?p=BadCredentials q1-20020adfdfc1000000b0022e049586c5sm11068760wrn.28 - gsmtp')
>Я пробовал следовать шагам в статье, упомянутым в сообщении об ошибке, но они не сработали. Не уверен, что я делаю неправильно, любая помощь будет очень признательна!
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_USE_TLS = True
EMAIL_PORT = 587
EMAIL_HOST_USER = 'example@gmail.com'
EMAIL_HOST_PASSWORD = '*****'
В первую очередь убедитесь, что настройка выполнена правильно.
Как описано здесь, Google больше не поддерживает использование сторонних приложений или устройств, которые просят вас войти в аккаунт Google, используя только имя пользователя и пароль. Но вы можете включить Less secure app access
в консоли разработчика. Риски вы несете сами (Здесь есть руководство по включению).
Последнее замечание: Не кодируйте пароль в исходниках, читайте его из окружения.
ОБНОВЛЕНИЕ: В Интернете есть множество руководств о том, как настроить Gmail для доступа по SMTP. Например, смотрите здесь