在Django 1.5中使用Gmail SMTP发送邮件

0 投票
1 回答
536 浏览
提问于 2025-04-18 17:49

我在我的Django应用中尝试用Gmail的smtp发送邮件。
我按照一些说明来配置我的setting.py文件。

这是我在setting.py文件中的代码片段。

EMAIL_BACKEND = 'django.core.mail.backends.dummy.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'myusername@gmail.com'
EMAIL_HOST_PASSWORD = 'my_password'
EMAIL_PORT = 587
EMAIL_USE_TLS = True

然后我尝试了下面这些命令,想把邮件发送到我自己的Gmail账户:

python manage.py shell
>>> from django.core.mail import EmailMessage
>>> email = EmailMessage('Mail Test', 'This is a test', to=['myusername@gmail.com'])
>>> email.send()

它返回了1,说明应该是成功的。
但是,我在Gmail的收件箱里找不到测试邮件。
我是不是漏掉了什么设置?
我在本地调试模式下运行我的Django网站,Django的版本是1.5。

提前谢谢你们!任何建议都很感激。

更新:

我把以下代码

EMAIL_BACKEND = django.core.mail.backends.dummy.EmailBackend

改成了

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

结果,我成功发送了邮件。

1 个回答

2

你的邮件后端设置为 dummy。把它改成 smtp

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

查看文档

Dummy后端 只是把信息打印到控制台,并没有实际发送邮件。

撰写回答