EMAIL_HOST = 'smtp.qq.com' # 邮件发送的服务器,开启SMTP服务时候,一般可以查到地址
EMAIL_HOST_USER = '邮箱地址' # 用于发送邮件的邮箱地址
EMAIL_HOST_PASSWORD = 'password' # SMTP服务的授权密码,不是邮箱的登录密码
EMAIL_USE_TLS = True # 是否开启安全协议,一般默认开启
EMAIL_PORT = 25 # SMTP服务器开放端口
from django.core.mail import send_mail
from django.conf import settings
send_mail(subject, # 邮件标题
'邮件内容', # 邮件内容
settings.EMAIL_HOST_USER, # 用于发送邮件的用户,默认用上述配置文件的用户
[email], # 接收邮件的用户列表
fail_silently=False, # 发送失败是否提示,一般默认False
)
from django.core.mail import send_mail
from django.conf import settings
html_message= '这是一段html代码'
send_mail(subject, # 邮件标题
'这里为空就行', # 邮件内容
settings.EMAIL_HOST_USER, # 用于发送邮件的用户,默认用上述配置文件的用户
[email], # 接收邮件的用户列表
fail_silently=False, # 发送失败是否提示,一般默认False
html_message=html_message # 要发送HTML内容
)
from django.core.mail import EmailMessage
from django.conf import settings
msg = EmailMessage(subject, # 邮件主题
html_content, # 邮件内容,直接使用html代码就行
settings.EMAIL_HOST_USER, # 用于发送邮件的用户
['[email protected]'] # 接收邮件的用户列表
)
msg.content_subtype = 'html' # 如果要发送html格式邮件,需要指定一下,如果发送普通邮件,无须这一行代码
msg.send()
这也不能算得上是第三种方法,只是说用另外一种渲染HTML格式,但是使用这种方法维护极其方便
from django.core.mail import EmailMessage
from django.templates.loader import render_to_string
# 跟渲染模板一样,事先写好html模板,可以将html代码与python代码分离开来,方便维护
data = {'name':'join'}
html_content= render_to_string('example.html', data)
msg = EmailMessage(subject, # 邮件主题
html_content, # 邮件内容,直接使用html代码就行
settings.EMAIL_HOST_USER, # 用于发送邮件的用户
['[email protected]'] # 接收邮件的用户列表
)
msg.content_subtype = 'html'
msg.send()