支持Jinja2模板的A/B测试
jinja-ab的Python项目详细描述
这是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为开源提供商业支持 图书馆,如果你需要的话!