在Django中将渲染后的模板进行邮件发送,可以使用send_email方法

首先在settings.py中添加如下配置

# 邮件配置SSL加密方式
EMAIL_HOST = 'smtp.qq.com'
EMAIL_PORT = 465 # 使用SSL加密方式端口为465
EMAIL_HOST_USER = 'username@qq.com'
EMAIL_HOST_PASSWORD = 'pwd'
EMAIL_USE_SSL = True # 使用SSL加密方式
EMAIL_FROM = 'username@qq.com'
# 邮件配置TTL加密方式
EMAIL_HOST = 'smtp.qq.com'
EMAIL_PORT = 587 # 使用TTL加密方式端口为587
EMAIL_HOST_USER = 'username@qq.com'
EMAIL_HOST_PASSWORD = 'pwd'
EMAIL_USE_TTL = True # 使用TTL加密方式
EMAIL_FROM = 'username@qq.com'

配置完成后,验证能够成功发送邮件

打开terminal,输入 python manage.py shell 打开shell,输入如下代码,如果返回值为1,则配置无误

from django.core.mail import send_mail
send_mail("Hello", "Hello World", "from_user@qq.com", ['to_user@qq.com'], fail_silently=False)

在views中编辑如下代码

from django.core.mail import EmailMessage
from django.template import loader
from settings import EMAIL_HOST_USER
import os def send_html_mail(cls, subject, html_content, recipient_list):
"""
发送邮件
:param html_content:
:param recipient_list:
:return:
"""
msg = EmailMessage(subject, html_content, EMAIL_HOST_USER, recipient_list)
msg.content_subtype = "html" # Main content is now text/html
msg.send() TEMPLATE_PATH = os.path.join(PROJECT_PATH, 'templates', 'report.html')
parameters = {'report_title':"this is a test report"}
subject = u'邮件主题'
html_content = loader.render_to_string(
TEMPLATE_PATH,
{
'parameters': parameters
}
)
send_html_mail(subject, html_content, ['to_user@qq.com'])

最新文章

  1. GJM : Unity3D HIAR -【 快速入门 】 六、导出 iOS 工程
  2. Ubuntu一路填坑...
  3. NGINX 配置 SSL 双向认证
  4. VS2012常用快捷键
  5. 将数据导入PostGIS
  6. Java 集合系列17之 TreeSet详细介绍(源码解析)和使用示例
  7. MySQL 配置优化
  8. [转]JNIEnv解析
  9. HDU 5410 CRB and His Birthday(完全背包变形)
  10. MyEclipse启动失败
  11. 凸包---HDU 2202
  12. poj2389---大数乘法
  13. Eclipse连接sql server 2012数据库编程一条龙
  14. c# Ftp下载程序源代码解析
  15. GIS制图人员的自我修养(1)--制图误区
  16. icns图标的制作
  17. 团队作业Week6:规格说明书编写
  18. java之ibatis数据缓存
  19. Kettle 使用入门
  20. 如何理解并学习javascript中的面向对象(OOP) [转]

热门文章

  1. nodeJs学习-04 POST数据请求,分段发送,分段接收
  2. python小数据池 is和 == 再谈编码
  3. @bzoj - 4381@ [POI2015] Odwiedziny
  4. 详解如何在Laravel中增加自定义全局函数
  5. 怎么查看mysql 的binlog日志存放的位置
  6. springmvc 返回json数据给前台jsp页面展示
  7. "?:"在正则表达式中什么意思
  8. PHP+MySQL实现对一段时间内每天数据统计优化操作实例
  9. vue调用兄弟组件的方法使用vueBus调用$emit、$on(只需触发方法即可,不需要考虑传值或参数的问题)
  10. C#将可编译为本地机器码