【Django】 发邮件 email

来源:互联网 发布:sdl区域分割算法 编辑:程序博客网 时间:2024/05/01 10:42

通过django来发邮件还是很简单的,

下面我们开始吧。

settings.py配置
########## Email Settings ##########
EMAIL_HOST = 'smtp.qq.com'
EMAIL_HOST_USER = '******@qq.com'
EMAIL_HOST_PASSWORD = '******'
EMAIL_PORT = '465'
EMAIL_USE_SSL = True
####################################


views.py中调用

1.需要导入发邮件相关的包:
from django.core.mail import EmailMessage

2.引用,有四个参数
  1)邮件主题
  2)邮件内容
  3)发件人邮件
  4)收件人列表
email_subject = '我是主题'
email_content = '我是内容'
emaillist = ['lelnox@foxmail.com',]     # 收件人列表
email = EmailMessage(email_subject, email_content, settings.EMAIL_HOST_USER, emaillist) # 创建email对象
email.content_subtype = 'html'    # 设置email的内容
email.send(fail_silently=True)    # If it’s False, send_mail will raise an smtplib.SMTPException

3. 另外内容可以依照模板来
from django.template import loader # 如果使用模板,就用loader来加载并渲染
email_content = loader.render_to_string(
'email_content.html', #需要渲染的html模板
{
"login_name":login_name,
"now":now,
}
)

模板:email_content.html
亲爱的<font color="green">{{login_name}}</font>用户,
<br/>
您的申请我们已经收到,我们会尽快处理。
<hr/>
 
<footer><center>{{now}}</center><footer>

The EmailMessage class


0 0