像django通知,但只是发送普通电子邮件。写这些是因为把其他的应用程序转换成一封html邮件很烦人

templated-emails的Python项目详细描述


这个应用程序抽象了电子邮件的发送方式,这样就可以 从纯文本电子邮件切换到html电子邮件,即使您使用的是第三方应用程序。 它通过使用与django通知非常相似的机制来实现这一点。

每封电子邮件都有一个文件夹。在此文件夹中可以放置:

  • short.txt(针对主题)
  • email.txt(用于纯文本电子邮件)
  • email.html(可选,如果还应发送html电子邮件)

一个好的做法是把所有的邮件都放在模板文件夹中的邮件/文件夹中, 因此,很容易看到你的系统正在发送哪些电子邮件

收件人可以是电子邮件数组(作为字符串)或用户。 如果您传递给用户,它还将尝试查找用户存储的语言 (accounts.account.language用pinax表示)并用它发送。

发送电子邮件的工作方式如下:

from templated_emails.utils import send_templated_email
send_templated_email(["philipp@gidsy.com"], "emails/invite_friends", {"my_variable":"blafoo"})

user = User.objects.get(pk=1)
# this will try to switch to the correct language of the user
send_templated_email([user], "emails/invite_friends", {"my_variable":"blafoo"})

系统将添加当前站点(django项目的站点对象) 和静态URL(用于链接静态内容)到模板的上下文。

语言

与django通知类似,系统将尝试查找 用户已在其帐户中设置(但可以使用设置将其配置为其他型号。通知语言模块) 为每个用户提供正确的语言。

内联CSS规则

内联css规则是烦人和乏味的,但如果你想支持所有电子邮件客户端,这是必要的。 因为包含了0.3 pynliner,它将从头部获取css并将其放入与规则匹配的每个元素中

您可以在settings.py中设置一个开关来打开或关闭此功能: TEMPLATEDEMAILS_USE_PYNLINER=False是默认值

芹菜

在内联CSS时,Pynliner可能非常慢你可以移动所有的死刑 使用此设置的芹菜(默认为false):

TEMPLATEDEMAILS_USE_CELERY = True

请注意,给定的上下文未经更改就传递给芹菜

安装

pip install -e http://github.com/philippWassibauer/templated-emails.git#egg=templated-emails

pip install templated-emails

依赖关系

  • 品林
  • cssutils

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android:在ListView上使用setOnItemClickListener   使用Netbeans 7.0连接到SQL Server的java正在挂起   java Spring3依赖项注入不适用于mule   java Flink SQL结果字段与LocalDateTime上请求的类型错误不匹配   java找不到文件的结尾   考虑到NamingStrategy,java有没有办法将字符串转换为JsonNode?   使用Netbeans/ant部署java(命令行)应用程序   java如何修复Spring引导多部分上载中的“所需请求部分不存在”   java在应用程序启动时通过引用获取映射未知目标实体属性异常   java形状旋转问题Java2d   Weblogic服务器上的java ExecuteAndWaitInterceptor问题   JavaSpringBoot:project将图像保存在错误的路径中,并且在使用IDEIntellji打开时不显示图像   类向java接口添加方法   Swing组件上的Java 7泛型   sql server如何从java获取用户名。sql。联系   java如何检查该行是否与正则表达式(regex)冲突?   java如何在spring引导安全中为计数失败登录设置验证登录为false   图像如何在Java中使PNG的白色透明?