1. 配置相关参数

如果用的是 阿里云的企业邮箱,则类似于下面:

在 settings.py 的最后面加上这些

EMAIL_BACKEND='django.core.mail.backends.smtp.EmailBackend'
EMAIL_USE_TLS = False
EMAIL_HOST='smtp.163.com'
EMAIL_PORT='25'
EMAIL_HOST_USER='2222@163.com'
EMAIL_HOST_PASSWORD='**' 这里密码不是邮箱密码,是STMP申请密码,在邮箱里面可以设置,开通就可以设置密码
DEFAULT_FROM_EMAIL='2222@163.com'


2. 发送邮件:

2.1 官网的一个例子:(试过,不行)
1
2
3
4
from django.core.mail import send_mail
 
send_mail('Subject here''Here is the message.''from@example.com',
    ['to@example.com'], fail_silently=False)
2.2 一次性发送多个邮件:(试过,不行)
1
2
3
4
5
6
7
8
from django.core.mail import 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)
备注:send_mail 每次发邮件都会建立一个连接,发多封邮件时建立多个连接。而 send_mass_mail 是建立单个连接发送多封邮件,所以一次性发送多封邮件时 send_mass_mail 要优于 send_mail。 2.3 如果我们想在邮件中添加附件,发送 html 格式的内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from django.conf import settings
from django.core.mail import EmailMultiAlternatives
 
 
from_email = settings.DEFAULT_FROM_EMAIL
# subject 主题 content 内容 to_addr 是一个列表,发送给哪些人
msg = EmailMultiAlternatives(subject, content, from_email, [to_addr])
 
msg.content_subtype = "html"
 
# 添加附件(可选)
msg.attach_file('./twz.pdf')
 
# 发送
msg.send()
上面的做法可能有一些风险,除非你确信你的接收者都可以阅读 html 格式的 邮件。 为安全起见,你可以弄两个版本,一个纯文本(text/plain)的为默认的,另外再提供一个 html 版本的(好像好多国外发的邮件都是纯文本的)只有这个可以
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from __future__ import unicode_literals
 
from django.conf import settings
from django.core.mail import EmailMultiAlternatives
 
subject = '来自自强学堂的问候'
 
text_content = '这是一封重要的邮件.'
 
html_content = '<p>这是一封<strong>重要的</strong>邮件.</p>'
 
msg = EmailMultiAlternatives(subject, text_content, from_email, [to@youemail.com])
 
msg.attach_alternative(html_content, "text/html")
 
msg.send()
上面代码打在app的views文件中,然后在project的urls中打下面的:
url(r'^$',emailapp_views.sent)
运行manage.py runserver 2000  浏览器打开才可以发送,如果直接运行views会一直提示电脑没有连接成功
												

Django发送邮件的更多相关文章

  1. Django 发送邮件

    问题: 对于一些错误信息或用户注册账号的时候,需要给用户发送邮件进行验证. 以用户注册发邮件为例子,用户向后端提起注册,后端收到用户邮箱,对邮箱格式进行验证,然后发送邮件,邮件内容中包括邮件标题.邮件 ...

  2. Django——发送邮件

    Django--发送邮件 在web应用中,服务器对客户发送邮件来通知用户一些信息,可以使用邮件来实现. Django中提供了邮件接口,使我们可以快捷的建设一个邮件发送系统. 以下是一个简单实例: se ...

  3. $Django 发送邮件--django封装模块和python内置SMTP模块

    一 使用SMTP模块发送邮件 import smtplib from email.mime.text import MIMEText from email.header import Header m ...

  4. Django发送邮件和itsdangerous模块的配合使用

    项目需求:用户注册页面注册之后,系统会发送一封邮件到用户邮箱,用户点击链接以激活账户,其中链接中的用户信息需要加密处理一下 其中激活自己邮箱的smtp服务的操作就不在加以说明,菜鸟教程上有非常清晰的讲 ...

  5. django发送邮件的坑

    django发送邮件的坑 配置django发邮件的时候本地发送时好好的,但是放到阿里云的服务器上却不能发送. 经过一系列的排查后终于发现是阿里云把25端口给封了. 后来改用smtps的方式发送,更改d ...

  6. django发送邮件send_mail&send_mass_mail

    一.配置 在setting.py中进行相关配置: EMAIL_HOST = 'smtp.sina.cn' #SMTP地址 EMAIL_PORT = 25 #SMTP端口 EMAIL_HOST_USER ...

  7. django 发送邮件功能

    setting.py # 邮件配置 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'smtp.e ...

  8. Django发送邮件方法

    在Django中将渲染后的模板进行邮件发送,可以使用send_email方法 首先在settings.py中添加如下配置 # 邮件配置SSL加密方式 EMAIL_HOST = 'smtp.qq.com ...

  9. 富文本编辑器、全文检索和django发送邮件

    1.富文本编辑器 1.1快速了解 借助富文本编辑器,网站的编辑人员能够像使用offfice一样编写出漂亮的.所见即所得的页面.此处以tinymce为例,其它富文本编辑器的使用也是类似的. 在虚拟环境中 ...

随机推荐

  1. JSP复习整理(五)JavaBean使用表单处理数据

    一.先建立用户输入的数据 usingGetparameter.html <!DOCTYPE html> <html> <head> <meta charset ...

  2. ajax用get刷新页面元素在IE下无效解决~~

    总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端 ...

  3. js数组的sort排序详解

    <body> <div> sort()对数组排序,不开辟新的内存,对原有数组元素进行调换 </div> <div id="showBox" ...

  4. oracle 存储过程的用法

    create or replace procedure  myPro(inParams in number,outParams out number) is str varchar(200); beg ...

  5. 那些年,坑死自己的事之fread/fwrite

    今天继续看牛人做过的东西,这个小程序并不大,加上相当多的注释行,才5000多行.这个小程序是在linux下实现的,之前自己也一直用vi来看并加以更加详细的注释,但是效率实在太低.于是将其转移到wind ...

  6. [转]DDD领域驱动设计基本理论知识总结

    领域驱动设计之领域模型 加一个导航,关于如何设计聚合的详细思考,见这篇文章. 2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity i ...

  7. DTMF三种模式(SIPINFO,RFC2833,INBAND)

    转自:http://www.tuicool.com/articles/n6Vb2iJ 1.DTMF(双音多频)定义:由高频音和低频音的两个正弦波合成表示数字按键(0~9 * # A B C D). 2 ...

  8. Zookeeper操作

    Zookeeper操作 注意搭建: 1.集群规模不小于3个节点 2.服务器之间系统时间要保持一致 1.搭建步骤: 1.解压安装包 2.设置zookeeper环境变量 3.修改配置文件————zoo.c ...

  9. 进击的Python【第七章】:Python的高级应用(四)面向对象编程进阶

    Python的高级应用(三)面向对象编程进阶 本章学习要点: 面向对象高级语法部分 静态方法.类方法.属性方法 类的特殊方法 反射 异常处理 Socket开发基础 一.面向对象高级语法部分 静态方法 ...

  10. React 编程思想翻译及学习笔记

    第一步:把UI图按组件层次结构拆分开 FilterableProductTable (橙色): 包含整个例子 SearchBar (蓝色): 接收所有用户输入 ProductTable (绿色): 基 ...