简单配置 [settings.py]
#邮件配置
EMAIL_HOST = 'smtp.imdst.com' #SMTP地址
EMAIL_PORT = 25 #SMTP端口
EMAIL_HOST_USER = 'admin@imdst.com' #我自己的邮箱
EMAIL_HOST_PASSWORD = '******' #我的邮箱密码
EMAIL_SUBJECT_PREFIX = u'[OPS平台]' #为邮件Subject-line前缀,默认是'[django]'
EMAIL_USE_TLS = True #与SMTP服务器通信时,是否启动TLS链接(安全链接)。默认是false
SERVER_EMAIL = 'my@imdst.com' #管理员站点
模块说明
- django 对smtplib 进行了封装位于 django.core.mail,使发邮件接口更加简单
- 样例
from django.core.mail import send_mail
send_mail('Subject here', 'Here is the message.', 'from@example.com', ['to@example.com'], fail_silently=False)
send_mail(subject, message, from_email, recipient_list, fail_silently=False, auth_user=None,auth_password=None)
subject 邮件的标题
message 邮件的内容
from_email 发送邮件者
recipient_list 接受邮件者列表
fail_silently 可选参数,默认是False,如果是False,则发送失败时候,会抛出 smtplib.SMTPException 异常
auth_user 可选的参数,如果有,那么认证SMTP Server时,使用该用户,否则使用 EMAIL_HOST_USER 设置
auth_password 可选参数,如果有,那么认证SMTP Server时,使用该密码,否则使用、EMAIL_HOST_PASSWORD 设置
send_mass_mail(datatuple, fail_silently=False, auth_user=None, auth_password=None)
datatuple:是一个元组,其格式如下:
(subject,message,from_email,recipient_list)
send_mail 每次发送邮件都打开一个新的连接来发送。
send_mass_mail 每次发送邮件时仅仅打开一个连接,将这次元组中的所有邮件发送出去。