出门莫恨无人随,书中车马多如簇。这篇文章主要讲述通过Google Apps向Django发送电子邮件时,为电子邮件帐户指定名称相关的知识,希望能为你提供帮助。
我正在通过Google Apps向使用Django的用户发送电子邮件。
当用户收到从Django应用程序发送的电子邮件时,他们来自:
do_not_reply@domain.com
查看收件箱中的所有电子邮件时,人们会将电子邮件的发件人视为:
do_not_reply
或do_not_reply@domain.com
取决于使用的电子邮件客户端
如果我使用浏览器和Google Apps本身登录“do_not_reply”帐户,然后向自己发送电子邮件,则电子邮件来自:
Dont Reply<
do_not_reply@domain.com>
因此,收件箱中电子邮件发件人显示的名称为:
Dont Reply
在Django中,有没有办法将“名称”附加到用于发送电子邮件的电子邮件帐户?
我查看了Django的mail.py,但没有找到解决方案的运气
http://code.djangoproject.com/browser/django/trunk/django/core/mail.py?rev=5548
使用:
Django 1.1
python 2.6
Ubuntu 9.1
settings.EMAIL_HOST ='smtp.gmail.com'
谢谢
答案您实际上可以使用"Dont Reply <
do_not_reply@domain.com>
"
作为您发送的电子邮件地址。
在你的django项目的shell中尝试这个来测试它是否也适用于gapps:
>
>
>
from django.core.mail import send_mail
>
>
>
send_mail('subject', 'message', 'Dont Reply <
do_not_reply@domain.com>
', ['youremail@example.com'])
另一答案除了send_mail方法发送电子邮件之外,EmailMultiAlternatives还可用于发送带有文本内容的html内容的电子邮件作为替代方案。
在你的项目中试试这个
from django.core.mail import EmailMultiAlternatives
text_content = "Hello World"
# set html_content
email = EmailMultiAlternatives('subject', text_content, 'Dont Reply <
do_not_replay@domain.com>
', ['youremail@example.com'])email.attach_alternative(html_content, 'text/html')
email.send()
这将发送邮件到youremail@example.com与Dont回复将显示为名称而不是电子邮件'do_not_reply@domain.com'。
另一答案【通过Google Apps向Django发送电子邮件时,为电子邮件帐户指定名称】我使用此代码通过gmail smtp发送(使用谷歌应用程序)。和发件人姓名都可以
def send_mail_gapps(message, user, pwd, to):
import smtplib
mailServer = smtplib.SMTP("smtp.gmail.com", 587)
mailServer.ehlo()
mailServer.starttls()
mailServer.ehlo()
mailServer.login(user, pwd)
mailServer.sendmail(user, to, message.as_string())
mailServer.close()
推荐阅读
- 通过C#通过Google Apps帐户发送电子邮件
- 如何接收电子邮件(节点app / ubuntu服务器[重复])
- 本文教你如何设置U盘打开
- 本文教你U盘打开uefi
- 本文教你bios设置硬盘打开
- 最好容易安全的禁用u盘工具推荐
- 本文教你老毛桃U盘打开盘
- u盘修好工具 免费版推荐
- uefi安装win10推荐