基于amazon ses的默认django电子邮件后端的替换
django-ses-email-backend的Python项目详细描述
Django Ses公司
另一个django电子邮件后端在amazon简单电子邮件服务(ses)之上。支持Django 1.9
、1.10
、1.11
、2.0
、2.1
。
是的。使用最新的boto3进行api调用,使用moto
这个包裹是关于什么的
每个web应用程序都需要在某个时刻发送电子邮件,可能是验证、密码重置、更新等,django默认支持smtp协议,只需指定smtp凭据即可。 但当您使用诸如SES之类的Amazon服务时,首选的方法是通过其API访问它
所以这里是男人。只需安装它,给ses证书,然后开始发送电子邮件。 如果您的应用程序是在AWS中托管的,则更多内容请参见每月大约60000封电子邮件是免费的
目录
安装
此软件包可通过pip获得,因此请使用pip安装它
pip install django-ses
并将其添加到settings.py的installed_apps部分
INSTALLED_APPS = [
'django_ses',
...
]
SES凭证设置
显然,您需要访问aws ses帐户,按照this guide生成凭据,或者如果您已经有访问密钥,请使用它。
在settings.py中按如下方式添加它
SES_ACCESS_KEY = 'xxx'
SES_SECRET_KEY = 'xxx'
SES_REGION_NAME = 'us-east-1'
SES_REGION_NAME
是us-east-1
的可选默认值
您需要verify domain或verify email才能在外部发送电子邮件
使用量
一旦安装完成,您可以像往常一样发送电子邮件,您现有的电子邮件呼叫应该在没有任何修改的情况下工作。
示例1-使用send_mail()
send_mail(subject="Test Subject", message="Message", from_email="from@example.com", recipient_list=['to@example.com'])
示例2-使用EmailMessage
email = EmailMessage(
'Subject 1',
'Body1 goes here',
'from@example.com',
['to1@example.com', 'to2@example.com'],
reply_to=['another@example.com'],
)
email.send()
https://docs.djangoproject.com/en/2.1/topics/email了解更多详细信息
待办事项
- 发送前、发送后信号
贡献
- 将问题提交给Github Issues
- 向
develop
分支提交修补程序 - 请编写测试来证明任何添加