支持Jinja2模板的A/B测试

jinja-ab的Python项目详细描述


Build status

这是Jinja的A/B测试扩展。它允许你编码 在模板中进行实验并呈现由 AB_EXPERIMENT环境变量。“控制”是默认值 如果未指定AB_EXPERIMENT,则为实验名称!

要安装:

pip install jinja-ab

在代码中启用如下扩展:

import os
import jinja_ab

env = Environment(
        loader=FilesystemLoader(),
        extensions=[jinja_ab.JinjaAbExperimentExtension],
    )

os.environ['AB_EXPERIMENT'] = 'v1'
template = env.get_template('index.html')
return template.render(context)

模板语法为:

{% experiment control %}This is the control{% endexperiment %}
{% experiment v1 %}This is version 1{% endexperiment %}

还支持其他语法:

{% ab control %}This is the control{% endab %}
{% ab v1 %}This is version 1{% endab %}

您还可以将这两个标记混合在一个模板中:

{% experiment control %}This is the control{% endexperiment %}
{% ab v1 %}This is version 1{% endab %}

也支持单引号和双引号!

注意:此扩展处理基于模板字符串的呈现 关于AB_EXPERIMENT的值。这取决于你或者你的基于Jinja2的工具 决定如何处理结果。在Mr. Senko处 我们将此扩展用作 pelican-ab插件。

贡献

源代码和问题跟踪程序位于https://github.com/MrSenko/jinja-ab

商业支持

Mr. Senko为开源提供商业支持 图书馆,如果你需要的话!

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

推荐PyPI第三方库


热门话题
java Cassandra复制因子大于节点数   java J2EE JTA事务回滚不适用于OSE Glassfish 4.0(Build 89)   java spring安全预认证用户登录   org的java类文件。反应流。从RxJava编译示例时未找到Publisher?   java在使用dataFormat作为POJO通过Camel调用Web服务时无法设置SOAP标头   Javafx类的java静态实例   java如何防止一个部件在关闭时覆盖另一个部件的位置   sql server无法从我的java代码连接到数据库   java在JList(Swing)中显示带有的ArrayList   从Java中的CXF服务获取WSAddressing数据   使用资产文件夹进行java简单json解析(本地)   java LDAPException未绑定的无效凭据   JavaJSFspring部署到weblogic   JAVA中字符数组中的特定元素排列?   如果脚本位于不同的目录中,则ant不会使用exec标记运行Javashell脚本