官方文档 1.11

配置settings.py

# QQ邮箱为例, 其他邮箱对应的SMTP配置可查官方
EMAIL_HOST = "smtp.qq.com"
EMAIL_PORT = 465
EMAIL_HOST_USER = "*********@qq.com"
EMAIL_HOST_PASSWORD = "dzptkzrdxcembieg"
EMAIL_USE_SSL = True
EMAIL_FROM = "no-replay<********@qq.com>"
EMAIL_TO = ["**********@163.com", "**************@163.com"]

send_mail 简易文本邮件

(subject, message, from_email, recipient_list)

from __future__ import absolute_import
import time
import os import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "BoYa.settings")
django.setup() from django.core.mail import send_mail
from users.models import ContactInfo
from BoYa.settings import EMAIL_FROM, EMAIL_TO def send_tip_email():
u = ContactInfo.objects.order_by("-id").first()
email_title = "有新的信息"
email_body = "UserName: {}, \nEmail: {}, \nPhone: {}, \nWebSite: {}, \n" \
"Message: {}".format(u.name, u.email, u.phone, u.website, u.message,
time.strftime("%Y-%m-%d %H:%M:%S"))
send_status = send_mail(email_title, email_body, EMAIL_FROM, ["zxb2031053@163.com"]) return send_status #发送成功状态码为1

send_mass_mail() 连接一次邮件服务器发送多份不同的邮件

message1 = ('Subject here', 'Here is the message', 'from@example.com', ['first@example.com', 'other@example.com'])
message2 = ('Another Subject', 'Here is another message', 'from@example.com', ['second@test.com'])
send_mass_mail((message1, message2), fail_silently=False)

EmailMultiAlternativesEmailMessage发送多媒体邮件

# -*- coding: utf-8 -*-
from __future__ import absolute_import
import os
import time import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "BoYa.settings")
django.setup() from django.core.mail import EmailMultiAlternatives, EmailMessage, send_mail
from BoYa.settings import EMAIL_FROM, EMAIL_HOST_USER subject, from_email, to = 'hello', EMAIL_FROM, 'zxb2031053@163.com' text_content = 'This is an important message.'
html_content = '<h1>This is a test <a href="https://www.baidu.com">message</a></h1>' \
'<p>This is an <strong>important</strong> message.</p>'
# msg = EmailMultiAlternatives(subject, text_content, from_email, [to])
# msg.attach_alternative(html_content, "text/html")
# msg.send() msg = EmailMessage(subject, html_content, from_email, [to])
msg.content_subtype = "html" # Main content is now text/html
# msg.attach('email.py', '8888888888877777777777777777777')
msg.attach_file('./email_send.py')
msg.attach_file(r'C:\Users\Belick\Desktop\Stu\BoYa_Project\BoYa\requirements.txt')
msg.send()

发送html模板邮件

from django.template import Context, loader
from users.models import UserProfile
user = UserProfile.objects.all().first()
print user.username
context = {
'username': user.username,
'image_url': user.image,
} # 变量可以在/templates/test.html模板中使用
email_template_name = 'test.html'
t = loader.get_template(email_template_name)
mail_list = ['zxb2031053@163.com',] msg = EmailMultiAlternatives(subject, t.render(context), from_email, [to])
msg.attach_alternative(t.render(context), "text/html")
msg.send()

django —— 邮件的更多相关文章

  1. Django 邮件推送 解决附件中文名字乱码

    Django邮件功能,详情可看官方文档(https://docs.djangoproject.com/en/1.10/topics/email/). 最近做这个功能时遇到的问题,发送附件,收到后中文名 ...

  2. django日志,django-crontab,django邮件模块

    django 日志 四大块,格式器,过滤器,处理器,日志管理器 LOGGING = { 'version': 1, 'disable_existing_loggers': True, 'formatt ...

  3. django邮件

    1.邮件变量 (django settings.py) ADMINS = [('JOHN','JOHN@example.com'),('zhang','zhang@example.com')] #设置 ...

  4. 毕业设计——Django邮件发送功能实现及问题记录

    django发送邮件:send_mail()&send_mass_mail() 自强学堂 刘江的博客 HTTPS,TLS和SSL django发送邮件及其相关问题 步骤 : 0. 登录作为发送 ...

  5. Django——邮件发送

    在settings中添加关键信息 EMAIL_HOST = 'smtp.qq.com' #不同的邮箱有不同的发件地址(收件地址) EMAIL_PORT = 25 #smtp端口号 EMAIL_HOST ...

  6. python 项目实战之Django 邮件发送

    发送邮件¶ 虽然 Python 借助 smtplib 模块简化了发送邮件的流程,但是 Django 在其基础上提供了更简化的支持.这些封装意在加快邮件发送,方便在开发时测试发送邮件,在不支持 SMTP ...

  7. Django:邮件功能实现

    django-users2和django的邮件功能模块都有相关的实现 ----------------------------------------------------------------- ...

  8. django邮件发送

    需要一个邮箱,设置pop3 设置setting EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = ' ...

  9. django邮件相关设置

    EMAIL_HOST = 'smtp.mxhichina.com' # 阿里云企业邮箱 EMAIL_HOST_PORT = 25 # 邮箱服务器端口 EMAIL_HOST_USER = '****** ...

随机推荐

  1. ABP框架源码中的Linq扩展方法

    文件目录:aspnetboilerplate-dev\aspnetboilerplate-dev\src\Abp\Collections\Extensions\EnumerableExtensions ...

  2. Java RMI 框架(远程方法调用)

    转自:http://haolloyin.blog.51cto.com/1177454/332426 RMI(即Remote Method Invoke 远程方法调用).在Java中,只要一个类exte ...

  3. .2-浅析webpack源码之打包后文件

    先不进源码,分析一下打包后的文件,来一张图: 首先创建两个JS文件,内容如下: // config.js module.exports = { entry: './input.js', output: ...

  4. JS forEach()与map() 用法(转载)

    JavaScript中的数组遍历forEach()与map()方法以及兼容写法   原理: 高级浏览器支持forEach方法语法:forEach和map都支持2个参数:一个是回调函数(item,ind ...

  5. C# 最大二叉堆算法

    C#练习二叉堆算法. namespace 算法 { /// <summary> /// 最大堆 /// </summary> /// <typeparam name=&q ...

  6. Android瀑布流照片

    http://blog.csdn.net/guolin_blog/article/details/10470797 记得我在之前已经写过一篇关于如何在Android上实现照片墙功能的文章了,但那个时候 ...

  7. 面试中常问的List去重问题,你都答对了吗?

    面试中经常被问到的list如何去重,用来考察你对list数据结构,以及相关方法的掌握,体现你的java基础学的是否牢固. 我们大家都知道,set集合的特点就是没有重复的元素.如果集合中的数据类型是基本 ...

  8. hadoop的checkpoint检查时间参数设置

    1.通常情况下,SecondaryNameNode 每隔一小时执行一次. 在hdfs-default.xml文件中: <property> <name>dfs.namenode ...

  9. 悟空模式-java-原型模式

    [却说那妖精与大圣斗经半日,不分胜败.行者把棒丢起,叫一声“变!”就以一变十,以十变百,以百变千,半天里,好似蛇游蟒搅,乱打妖邪.妖邪慌了手脚,将身一闪,化道清风,即奔碧空之上逃走.行者念声咒语,将铁 ...

  10. Mysql实现级联操作(级联更新、级联删除)

    一.首先创建两张表stu,sc create table stu( sid int UNSIGNED primary key auto_increment, name ) not null) TYPE ...