如何通过Django发送电子邮件?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (51)

在我的settings.py,我有以下内容:

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

# Host for sending e-mail.
EMAIL_HOST = 'localhost'

# Port for sending e-mail.
EMAIL_PORT = 1025

# Optional SMTP authentication information for EMAIL_HOST.
EMAIL_HOST_USER = ''
EMAIL_HOST_PASSWORD = ''
EMAIL_USE_TLS = False

我的电子邮件代码:

from django.core.mail import EmailMessage
email = EmailMessage('Hello', 'World', to=['user@gmail.com'])
email.send()

当然,如果我通过python -m smtpd -n -c DebuggingServer localhost:1025,我可以在我的终端看到电子邮件。

  1. 你不能用本地主机(简单的ubuntupc)发送电子邮件吗?
  2. 我以为在Django 1.3send_mail()有些不受欢迎,而且EmailMessage.send()被用了吗?
提问于
用户回答回答于

将电子邮件发送到真正的SMTP服务器。如果你不想建立自己的公司,那么你可以找到可以为你运营的公司。

用户回答回答于

在环境中:

EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_HOST_USER = 'me@gmail.com'
EMAIL_HOST_PASSWORD = 'password'

扫码关注云+社区