如果您正在使用基于电子邮件的身份验证以保障您的应用程序,但是在Heroku上遇到了问题,则可能是由于您没有正确地设置电子邮件后端所致。为了解决此问题,您可以按照以下步骤调整设置:
from django.core.mail import send_mail
send_mail(
'Subject here',
'Here is the message.',
'from@example.com',
['to@example.com'],
fail_silently=False,
)
如果电子邮件可以成功发送,那么您的邮件后端应该可以正常工作。
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'your_email@example.com'
EMAIL_HOST_PASSWORD = 'your_email_password'
这些值应该是您在本地设置时使用的值。如果您使用其他电子邮件后端(例如SendGrid或Mailgun),则应该相应地调整这些值。
heroku config:set EMAIL_BACKEND='django.core.mail.backends.smtp.EmailBackend'
heroku config:set EMAIL_HOST='smtp.gmail.com'
heroku config:set EMAIL_PORT='587'
heroku config:set EMAIL_USE_TLS='True'
heroku config:set EMAIL_HOST_USER='your_email@example.com'
heroku config:set EMAIL_HOST_PASSWORD='your_email_password'
一旦您完成了这些步骤,您的Django应用程序的电子