Настройка электронной почты с Sendgrid в Heroku для приложения Django
Я развертываю приложение Django на Heroku и использую аддон Sendgrid для отправки электронной почты проверки при регистрации пользователя на сайте.
я следовал инструкциям здесь и вставить следующий текст в settings.py
:
EMAIL_HOST = 'smtp.sendgrid.net'
EMAIL_HOST_USER = 'sendgrid_username'
EMAIL_HOST_PASSWORD = 'sendgrid_password'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
тем не менее, мое приложение сбой после регистрации.
что именно я должен поставить для EMAIL_HOST_USER
и EMAIL_HOST_PASSWORD
?
на вкладке разработчика в аддоне sendgrid в heroku он дает мне имя пользователя app*******@heroku.com
, и для пароля он просто говорит "Ваш пароль". Пароль мой пароль в Heroku?
кроме того, мне нужно включить DEFAULT_FROM_EMAIL
в своем ? И где я говорю в статье, что это такое?
EDIT: я установил DEBUG = True
, и, похоже, ошибка:
SMTPSenderRefused
(550, 'Cannot receive from specified address <info@myapp.com>: Unauthenticated senders not allowed', 'info@myapp.com')
похоже, что проблема происходит до того, как Sendgrid делает свое дело. Нужно ли мне как-то аутентифицировать адрес электронной почты с Heroku?
1 ответов
внутри вашего settings.py включить:
import os
EMAIL_HOST_USER = os.environ['SENDGRID_USERNAME']
EMAIL_HOST= 'smtp.sendgrid.net'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_PASSWORD = os.environ['SENDGRID_PASSWORD']
Edit: изменен EMAIL_PASSWORD на EMAIL_HOST_PASSWORD, так как это правильное написание.