Django
框架在在
django.core.mail
模块中内置了邮件发送功能,通常情况下发送邮件是需要使用
SMTP
服务器的,且常用的免费邮箱服务器有 163
、
126
、
QQ
等,下面以发送
QQ
邮件为例
?
?
?随后就会生成一串字符串 ******************************
若要发送邮件到
QQ
邮箱,则需要使用到
django
框架的邮件发送模块,常用函数如下:
?
send_mail(
subject,
message,
from_email,
recipient_list,
html_message=None,.)
用于发送邮件信息到邮箱。其中,参数内容作如下说明:
①参数
subject
表示邮件主题;
②参数
message
表示邮件内容,若没有内容,则设定为
""即可;
③参数
from_email
表示发件人邮箱号;
④参数
recipient_list
表示收件人,这是一个列表,可以有多个收件人;
⑤参数
html_message
表示传输的
html
文本内容。
|
打开项目的settings.py文件,配置如下:
# 发送 QQ 邮件配置项
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.qq.com'
EMAIL_PORT = 25
# EMAIL_HOST_USER = 'xxx@qq.com' # 你的 QQ 账号
EMAIL_HOST_USER = ' ' # 你的 QQ 账号
# EMAIL_HOST_PASSWORD = '刚刚复制的授权码(不是你的 QQ 密码!)'
EMAIL_HOST_PASSWORD = ' '
EMAIL_USE_TLS = True # 这里必须是 True,否则发送不成功
# EMAIL_FROM = 'xxx@qq.com' # 你的 QQ 账号
EMAIL_FROM = '(可随意写入内容)< 自己的邮箱号 >' # 收件人看到的发件人
项目的应用下找到views.py
文件中新建发送邮件的
send_email()
视图函数:
def send_email(request):
"""发送消息内容到邮箱"""
message = '<a href="http://www.baidu.cn/" target="_blank">点击激活</a>'
# 发送邮件
send_mail(subject = "注册激活",
message = "hello",
from_email = settings.EMAIL_FROM,
recipient_list = ["目的邮箱@qq.com"],
html_message=message)
return HttpResponse("OK")
项目的应用下找到urls.py 文件中配置
url:
url(r'^send_email/',send_email),
启动服务器,在浏览器中输入如下网址:
http://127.0.0.1:8000/send
,若能出现OK则表示发送成功:
?如果想发给自己,则把接收人邮箱改为自己的即可。
有兴趣的朋友自行尝试
|