settings.py配置
1 '''邮件配置''' 2 EMAIL_HOST = 'smtp.163.com' 3 EMAIL_PORT = 25 4 EMAIL_HOST_USER = 'xxxx@163.com' 5 EMAIL_HOST_PASSWORD = 'xxx' 6 UserEmail='xxx<xxxx@163.com>'
发送方法
from django.core.mail import EmailMessage
from django.template import loader
from email.Utils import formatdate
"""普通邮件"""
def common_email(title,content,target_email):
if not isinstance(target_email,(tuple,list)):
target_email=[target_email]
date = formatdate(localtime = True)
msg = EmailMessage(title, content, settings.UserEmail, target_email, headers = {'Date': date})
result = msg.send(fail_silently = True)
return result
"""页面邮件"""
def html_email(subject,html,para,recipient_list):
if not isinstance(recipient_list,(tuple,list)):
recipient_list = [recipient_list]
html_content = loader.render_to_string(html,para)
date = formatdate(localtime = True)
msg = EmailMessage(subject, html_content, settings.UserEmail, recipient_list, headers = {'Date': date})
msg.content_subtype = "html"
return msg.send(fail_silently = True)
也可用python直接调用django方法发送邮件,添加代码:
from django.conf import settings
settings.configure(
EMAIL_HOST = 'smtp.163.com',
EMAIL_HOST_USER = 'xxx@163.com',
EMAIL_HOST_PASSWORD = 'xxx',
UserEmail='测试 <xxx@163.com>',
EMAIL_PORT = 25,
TEMPLATE_DIRS=[
'/home/xx/workspace/',
],
)