23

HerokuにDjangoアプリをデプロイし、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か?

herokuのsendgridアドオンの開発者タブの下に、ユーザー名が表示されapp*******@heroku.com、パスワードの場合は「YourPassword」とだけ表示されます。パスワードは私のHerokuパスワードですか?

DEFAULT_FROM_EMAILまた、settings.pyファイルに含める必要がありますか?そして、Sendgridにそれが何であるかをどこに伝えるのですか?

編集:私は設定しましたDEBUG = True、そしてそれはエラーが次のように見えます:

SMTPSenderRefused

(550, 'Cannot receive from specified address <info@myapp.com>: Unauthenticated senders not allowed', 'info@myapp.com')

Sendgridが処理を実行する前に、問題が発生しているようです。どういうわけかHerokuでメールアドレスを認証する必要がありますか?

4

1 に答える 1

39

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']

編集:正しいスペルであるため、EMAIL_PASSWORDをEMAIL_HOST_PASSWORDに変更しました。

于 2012-03-15T16:45:01.957 に答える