jinja2
jinja2
Jinja2是基于Python的模板引擎,功能比较类似于PHP的smarty,J2ee的Freemarker和velocity。它能完全支持unicode,并具有集成的沙箱执行环境,应用广泛。jinja2使用BSD授权。
特性
沙箱执行模式,模板的每个部分都在引擎的监督之下执行,模板将会被明确地标记在白名单或黑名单内,这样对于那些不信任的模板也可以执行。
强大的自动HTML转义系统,可以有效地阻止跨站脚本攻击。
模板继承机制,此机制可以使得所有的模板都具有相似一致的布局,也方便了开发人员对模板的修改和管理。
高效的执行效率,Jinja2引擎在模板第一次加载时就把源码转换成Python字节码,加快模板执行时间。
可选的预编译模式。
调试系统融合了标准的Python的TrackBack系统,使得模板编译和运行期间的错误能及时被发现和调试。
语法可配置,可以重新配置Jinja2使得它更好地适应LaTeX或ECMAScript的输出。
模板设计人员帮助手册,此手册指导设计人员更好地使用Jinja2引擎的各种方法。
Jinja2模板引擎允许自定义标签、过滤器(用于格式化或转换值)、测试(用于评估条件)和全局变量。与Django模板引擎不同,Jinja允许模板设计者在对象上调用带参数的函数。Jinja还配备了类似Unix管道的易于使用的过滤器系统。
使用用户
Python框架
Flask使用jinja2作为框架的模板系统。
使用django等其他Python web框架也可以方便的集成jinja2模板系统。
一些网站
新增应用
Jinja2也被Ansible、Trac和Salt等工具使用。此外,它还用于创建SQL宏,例如用于与dbt一起使用。
参考资料

Warning: Invalid argument supplied for foreach() in /www/wwwroot/newbaike1.com/id.php on line 362
目录
概述
特性
使用用户
Python框架
一些网站
新增应用
参考资料