在django中提供了邮件接口

QQ邮箱配置

qq邮箱地扯:https://mail.qq.com

settings文件

# 邮箱配置
EMAIL_USE_SSL = True
EMAIL_HOST = 'smtp.qq.com' # 如果是 163 改成 smtp.163.com
EMAIL_PORT = 465
EMAIL_HOST_USER = 'xxxx@qq.com' # 配置邮箱
EMAIL_HOST_PASSWORD = 'xxxxx' # 对应的授权码
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER

邮箱发送视图

普通信息邮件发送

# 引入相关模块
from django.conf import settings
from django.core.mail import send_mail def send_mail(request):
msg = '测试django发送邮箱'
send_mail(
subject='请注意这是Django邮件测试',
message=msg,
from_email=settings.EMAIL_HOST_USER,
recipient_list=["xxxx@qq.com"] # 把这条邮件信息发送给xxxx@qq.com的邮箱
)
return HttpResponse('测试邮件已发出请注意查收')

路由

path("check_mail", views.check_mail, name='check_mail'),

模板html邮件发送

第一步:创建要发送的模板html

在templates下创建一个文件夹mail,mail文件夹里有一个文件:send_html.html,内容如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>发送Html</title>
</head>
<body>
<b>模板Html邮箱发送,接收的参数是:{{ paramters }}</b>
</body>
</html>

第二步:创建一个包utils

utils包里创建mail.py文件,内容如下:

from django.conf import settings
from django.core.mail import send_mail, EmailMessage
from django.template import loader # 发送模板信息邮件
def send_html_mail(subject, html_content, recipient_list):
msg = EmailMessage(subject, html_content, settings.EMAIL_HOST_USER, recipient_list)
msg.content_subtype = "html" # Main content is now text/html
msg.send()

第三步:视图文件

关键内容如下:

# 引入相关模块
from django.core.mail import send_mail
from utils.mail import send_html_mail
from django.template import loader def send_html(request):
subject = "发送html模板邮箱信息"
html_content = loader.render_to_string('mail/send_html.html',{'paramters':'demo'})
recipient_list = ["xxx@qq.com"] # 发给xxx@qq.com的邮箱
send_html_mail(subject,html_content,recipient_list)
return HttpResponse('发送成功:已发送模板信息')

第四步:路由

path("send_html", views.send_html, name='send_html'),

注意地方:

如果发送成功收不到邮件信息的话,请查看邮箱中的垃圾箱,如下图:

==================== 完,最后自己查看 ===============================

django 邮箱发送的更多相关文章

  1. Django实现注册,往邮箱发送验证链接

    由于最近要做个平台,在GitHub上下载了一个系统框架,想着为了安全,实现注册时往一个邮箱发送注册信息,由管理员来确认是否同意其注册. 感谢博主:https://blog.csdn.net/geek_ ...

  2. Linux配置邮箱发送(MUTT/MSMTPQ)

    配置邮箱发送 http://www.ilanni.com/?p=10589

  3. java邮件发送 qq与163邮箱互发和qq和163邮箱发送其他邮箱实例

    研究了近一天的时间,通过查阅相关资料,终于对java发送邮件的机制,原理有了一点点的理解,希望能够帮到大家! 1.首先要向你的项目里导入1个jar包:mail-1.4.4.jar即可(实现qq和163 ...

  4. 通过邮箱发送html报表

    前言 需求是发送邮件时, 可以将报表正文贴到邮件里, 可以正常复制选中报表内容. 目前的做法是简单粗暴的转成了一张图片, 这样效果显然是很糟糕的. 今天看到邮箱里可以预览Word, Excel, F1 ...

  5. spring 实现邮箱发送

    使用spring mail 实现的邮箱发送功能,包括附件的发送(附件发送要保证附件存在的路径是真实),使用maven集成jar包,通过spring mvc 实现前后台的调用,发送方使用的是163邮箱, ...

  6. java邮箱发送

    一.为何要使用邮箱发送 相信大家在日常工作生活中少不了和邮件打交道,比如我们会用邮件进行信息交流,向上级汇报日常工作:邮件发送的原理是什么?邮件是如何发送的呢?本系列教程将会讲解邮件如何申请可用jav ...

  7. JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架)

    JAVA 实现 QQ 邮箱发送验证码功能(不局限于框架) 本来想实现 QQ 登录,有域名一直没用过,还得备案,好麻烦,只能过几天再更新啦. 先把实现的发送邮箱验证码更能更新了. 老规矩,更多内容在注释 ...

  8. qq邮箱发送,mail from address must be same as authorization user

    由于邮箱发送的邮箱账号更换,所以重新测试.结果一直出错,要不就是请求超时,要不就是未授权. 用smtp 开始的时候,端口使用495,结果是请求超时. 后来改成25,结果是未授权. 再后来听人说,有一个 ...

  9. Java邮箱发送——企业版

    企业版邮箱发送工具类 import java.security.Security; import java.util.Properties; import javax.mail.Authenticat ...

随机推荐

  1. 输出匹配项:grep

    命令格式: grep pattern [file...] When grep encounters a "pattern" in the file, it prints out t ...

  2. 【NLP新闻-2013.06.16】Representative Reviewing

    英语原文地址:http://nlp.hivefire.com/articles/share/40221/ 注:本人翻译NLP新闻只为学习专业英语和扩展视野,如果翻译的不好,请谅解! (实在是读不大懂, ...

  3. 【leetcode】1008. Construct Binary Search Tree from Preorder Traversal

    题目如下: Return the root node of a binary search tree that matches the given preorder traversal. (Recal ...

  4. Maven开始

    1:加入Maven插件: 这句话的意思是: 从本地仓库找到相应的jar包 <localRepository>F:\RepMaven</localRepository 2:创建一个Ma ...

  5. vue打包配置发布路径

    目的:配置路径,让打包后的dist在本地可以打开. 方法:修改build文件夹下边的的webpack.dev.conf.js文件,找到devServer下边的publicPath,这个来源于confi ...

  6. gym 101810 M. Greedy Pirate (LCA)

    题目:https://codeforc.es/gym/101810/problem/M 题意:给 你一颗树,下面有m次查询,求u->v的最大值是多少,输入两点之间都会有两条边,正边有正权,反边有 ...

  7. LintCode之各位相加

    题目描述: 我的代码 public class Solution { /* * @param num: a non-negative integer * @return: one digit */ p ...

  8. 测开之路五十一:代码实现MongoDB增删改查

    初始化时连接.析构时断开连接 from pymongo import MongoClient class Mogo(object): def __init__(self, host='127.0.0. ...

  9. JS中获取元素使用getElementByID()、getElementsByName()、getElementsByTagName()的用法和区别

    Web标准下可以通过getElementById(), getElementsByName(), and getElementsByTagName()访问Documnent中的任一个标签:   1 g ...

  10. MSDN上关于WinDbg的手册

    参考:http://msdn.microsoft.com/en-us/library/windows/hardware/ff540507(v=vs.85).aspx 这是最靠谱的参考了,比.hh要直观 ...