面向django的模板/事务电子邮件抽象

django-templated-email-db的Python项目详细描述


====
django模板电子邮件
==
:信息:面向django的模板电子邮件发送类
:作者:bradley whittington(http://github.com/bradwittington,http://twitter.com/darb)
:测试:…图片::https://api.travis ci.org/bradwittington/django templated email.png


概述
====
django templated email面向发送模板电子邮件
用于事务邮件(支持邮件处理程序,
和postageapp),但是使用django的
模板系统和django的core.mail函数的后端类的默认值。库支持
模板继承,添加cc'd和bcc'd收件人,可配置
模板命名和位置,通过在后端/提供程序之间轻松切换,

send_templated_email方法可以被视为电子邮件的呈现到_响应的快捷方式。


开始-安装
==


安装::

pip install django templated email

将以下内容添加到您的设置中。py(但它可以正常工作):

templated_email_backend='templated_email.backends.vanilla_django.templatebackend'

您可以使用快捷方式版本
templated_email_backend='templated_email.backends.vanilla django'

#您还可以直接使用模板电子邮件中的类
backends.vanilla django import templatebackend
模板电子邮件中的模板backend=templatebackend


后端

python发送邮件:

"用户名":request.user.user name,
"全名":request.user.get_full_name(),
"注册日期":request.user.date_joined
},
可选:
cc=['cc@example.com',
bcc=['bcc@example.com'],
headers={'my-custom-header':'custom value'},
您可以使用**获取模板的电子邮件**,它将返回一个django**emailMessage**对象,该对象是使用**香草的django**后端准备的:


从模板的电子邮件导入获取模板的邮件
获取模板的邮件(
模板的名称为"欢迎",
发件人电子邮件=@example.com',
收件人=['to@example.com'],
上下文={
"用户名":请求。用户。用户名,
"全名":请求。用户。获取全名(),
"注册日期":请求。用户。加入日期
},
可选:
cc=['cc@example.com'],
bcc=['bcc@example.com'],




您还可以使用**cc=['example@example.com']****来**cc**和**bcc**收件人。有些后端有其他可以覆盖的参数,请参阅下面的内容。

使用:
用户名:{{username}
加入日期:{{signup}


谢谢,摇滚!
{%endblock%}

用法:

{%block html%}
<;p>;hi{{{{full{name}},<;p>;

<;p>;您刚刚注册了我的网站,使用:
<;dl>;
<;dt>;用户名<;dt>;<;dd>;{{username}<;dd>;
<;dt>;加入日期<;dt>;<;dd>;{{注册日期}<;dd>;
<;dl>;
<;p>;

<;p>;谢谢,摇滚!<;/p>;
{%endblock%}

确保每个文件都有一个尾部斜杠
模板的电子邮件文件扩展名='email'

对于**vanilla_django**和**mailcimp_sts**后端,可以为**模板前缀**和**模板后缀**(或使用较少的后端可移植**模板目录**/**文件扩展名**)设置一个值如果希望将一组模板存储在不同的目录中,则调用**发送模板化邮件**的时间。记住要包含一个尾随斜杠。

请注意/警告模板继承
----
模板继承有非常基本的支持(使用**{%扩展…%}**在模板中)。如果使用**{{block.super}}**,并将导致电子邮件的空白部分。



您刚刚注册了我的网站,使用:
用户名:{{username}}
加入日期:{{signup}

谢谢,摇滚!

它将使用**模板化的电子邮件/welcome.html**作为电子邮件的html部分,让您可以使它变得非常漂亮。

未来计划
----


请参见https://github.com/bradwittington/django-templated-email/issues?state=open

您应该注意:

*您对**发送模板的邮件**的调用应为**模板目录**设置一个值,这样您就可以将应用程序特定模板的副本保存在应用程序本地(尽管如果您将其存储在*<;您的应用程序>;中,加载程序会找到您的电子邮件模板;/模板/模板电子邮件*,如果**模板电子邮件模板目录**未被过度隐藏)
*如果您(而且您应该)设置**模板目录**的值,请记住包含一个斜杠,即.*我的应用程序的电子邮件/'*
*部署的应用程序可能使用不同的后端,而该后端不使用django模板后端,因此请在自述文件中注明警告开发人员,如果他们已经在使用django模板后端的电子邮件,则需要确保他们的电子邮件提供商可以发送您的所有模板(最好在方便的地方枚举这些模板)


有关特定后端的说明:
==


会在开箱即用的。默认情况下,它假定以下设置(如果您希望覆盖这些设置):

设置文件(但是,首选方法是在模板中使用**{%block subject%}**)::


参数:

template_prefix='your_template_dir/'覆盖方法查找电子邮件模板的位置(alternatily,使用template_dir)
template_suffix='email'覆盖电子邮件模板的文件扩展名(或者,使用文件扩展名)
cc=['fubar@example.com']\#获取django邮件后端连接,使用**django.core.mail.get_connection创建**
auth_user='username'覆盖django邮件后端使用的用户,根据**django.core.mail.send嫒mail**
验证密码='password'覲覆盖django邮件后端使用的密码,根据**django.core.mail.send嫒mail**

使用postagapp:
----

使用postagapp(http://postagapp.com)发送方法,您需要安装python postagepp::

pip install-e git://github.com/bradwittington/python postagepp.git egg=postagepp


,并将以下内容添加到您的设置中。py::

='templated_email.backends.postagepp_backend.templatebackend'

postagepp_api_key='yourapikey'


mailcimp sts send method,您需要安装mailsnake(请注意,在mainsnake获得sts支持之前,你需要使用我的fork)::

pip安装-e git://github.com/nitinhayaran/greatape.git egg=greatape


并将以下内容添加到你的设置中。py::

templated@email@backend='templated@email.backends.mailchimp@sts.templatebackend'

mailchimp@api-key='yourapikey'

}
}


mailchimp sts发送者使用与vanilladjango后端相同的模板处理器,因此,您可以全局覆盖以下设置:

*发送模板邮件*

…_ Django:http://djangoproject.com

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

推荐PyPI第三方库


热门话题
gwt java。lang.UnsupportedClassVersionError:不受支持的专业。小版本51.0   java XML解析器trycatch不工作   java Jackson MRBean不工作,无法构造实例   javascript是检查参数的更好方法吗?   java在发生冲突时从ArrayList中删除对象   JavaSpringWebFlux和KeyClope JWTRESTAPI   java Selected选项在微调器中不可见   java在增加分区后,有没有办法在ApacheKafka中保持顺序?   java添加SourceRoot会导致spring启动应用程序出错   java Spring引导:任何bean都没有实现ReactiveCrudepository   java无法注册我的自定义AbstractAnnotationConfigDispatcherServletInitializer   TCP连接上的java Caesar密码   java树集排序不正确   java如何在自定义查询中加载@ElementCollection?