MIT Open Learning django邮件应用扩展
项目描述
mitol-django-mail
这是Open Learning Django Mail应用。它提供了一些围绕邮件的关键功能
- 模板化的多部分HTML电子邮件
- 自动生成多部分电子邮件的纯文本部分
- 电子邮件HTML中的CSS内联
入门
pip install mitol-django-mail
添加邮件应用
INSTALLED_APPS = [
...
"mitol.mail.apps.MailApp",
]
设置
常见Django设置
SITE_BASE_URL
- 网站的host url,包括协议(例如 "https://example.com/")SITE_NAME
- 网站的名称
邮件应用设置
mitol-django-mail
应用的全部设置都使用MITOL_MAIL_
前缀命名空间在Django设置中。
MITOL_MAIL_FROM_EMAIL
- 所有消息的默认发送者邮箱MITOL_MAIL_REPLY_TO_ADDRESS
- 所有消息的默认回复邮箱MITOL_MAIL_MESSAGE_CLASSES
- 一个包含完全限定消息类名的列表,使消息类在调试器中可用MITOL_MAIL_ENABLE_EMAIL_DEBUGGER
- 如果应启用邮件调试器,则设置为True
,您可能希望将其设置为与DEBUG
相同的值MITOL_MAIL_RECIPIENT_OVERRIDE
- 仅本地使用,此选项覆盖所有发出的电子邮件消息的接收者MITOL_MAIL_FORMAT_RECIPIENT_FUNC
- (可选)设置一个自定义函数来格式化接收者。如果您将名称存储在Django内置的User
模型以外的位置,通常需要使用此选项。默认:"mitol.mail.defaults.format_recipient"
。MITOL_MAIL_CAN_EMAIL_USER_FUNC
- (可选) 设置为自定义函数以确定是否可以给用户发送电子邮件。您通常会在用户有电子邮件地址之外还有其他条件时使用此选项。默认:"mitol.mail.defaults.can_email_user"
。MITOL_MAIL_CONNECTION_BACKEND
- 用于发送电子邮件的连接后端。只有当您要执行一些anymail
无法提供的非常自定义的操作时,才使用此选项。默认:"anymail.backends.mailgun.EmailBackend"
。
使用方法
创建消息类
这涉及到对mitol.mail.messages.TemplatedMessage
进行子类化。要进行子类化,请执行以下操作
template_name
属性 - 表示此消息模板所在的templates/mail
目录内的目录的字符串(例如,"password_reset"
)name
属性 - 您的消息的人性化名称(例如,"密码重置"
)get_debug_template_context
- 静态方法,返回用于在调试器中渲染电子邮件的上下文字典
定义模板
在您的应用程序的templates
目录中创建一些模板
templates/
mail/
{template_name}/
subject.txt
body.html
配置settings.py
将您的自定义消息类添加到MITOL_MAIL_MESSAGE_CLASSES
,以便在调试器中使用。
可选自定义
可选地,您还可以覆盖
get_base_template_context
- 扩展与此类型所有电子邮件一起使用的默认基本模板上下文。返回类型是dict
。作为最佳实践,您应该与super().get_base_template_context()
合并。get_default_headers
- 扩展与此类型所有电子邮件一起使用的默认头信息。返回类型是dict
。作为最佳实践,您应该与super().get_default_headers()
合并。
项目详情
下载文件
下载适合您平台文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分布
mitol-django-mail-2023.12.19.tar.gz (16.2 kB 查看哈希值)
构建分布
关闭
哈希值 for mitol_django_mail-2023.12.19-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a32853bfe7da39d4c34651d7e5bddc547678c1b5b3a54e56e492879276eab371 |
|
MD5 | cac4d7d98c1979e94f5404c46453f80d |
|
BLAKE2b-256 | 5e4527afcb7a712c72cc3f4bbadfd696fe03c747d9fc35582b610cd0fa25b07f |