python html5 bootstrap 视频教程

德云社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5857|回复: 0

Jinja2 ── 支持unicode 采用BSD协议 源于Django的 python模板引擎

[复制链接]

185

主题

204

帖子

1175

积分

工程师

Rank: 5Rank: 5

金钱
759
金币
15
威望
0
贡献
0
发表于 2016-6-17 09:08:53 | 显示全部楼层 |阅读模式
AI人工智能 语音助理 人工翻译 教程
Jinja2 ── 支持unicode 采用BSD协议 源于Django的 python模板引擎

Jinja2 是基于 python 下一个被广泛应用的模版引擎,功能类似 PHP 的 smarty,J2ee 的 Freemarker 和 velocity。它完全支持 unicode,且集成了沙箱执行环境,应用广泛。jinja2 采用 BSD 许可授权协议。


Jinja2 是一个现代、代码友好,设计思想源于 Django 模板引擎的 Python 模板语言。Jinja2 扩展了 Django 的语法和添加了一系列强大功能。Jinja2 渲染速度快,已被广泛应用,其中最显著的一项是增加了沙箱执行功能和可选自动转义功能,这对于大多数应用的安全性来说,是非常重要的。


目前,包括 Flask 框架,Mozilla、SourceForge、Instagram、NPR 在内,都在使用 jinja2 作为模板系统。


主要特点

01、沙箱

Jinja2 沙箱执行模式,模板的每个部分都在引擎监督下执行,模板会被明确标记在白名单或黑名单内;这样的话,对于那些不信任的模板也可执行。


02、自动转义 HTML

强大的自动 HTML 转义系统,可有效地阻止跨站脚本攻击。


03、模板继承机制

此机制可使所有模板,都具有相似一致的布局,方便开发人员对模板的修改和管理。


04、高效的执行效率

Jinja2 引擎在模板第一次加载时,就会把源码转换成 Python 字节码,加快模板执行速率、缩短执行时间。


05、可选预编译模式


06、调试系统

调试融合了标准 Python TrackBack 系统,使得模板编译和运行期间的错误,能及时被发现和调试。


07、语法可配置

可重新配置 Jinja2,使之可更好地适应 LaTeX 或 JavaScript 的输出。


版权声明:
本文为独家原创稿件,版权归 德云社区,未经许可不得转载;否则,将追究其法律责任。

AI人工智能 语音助理 人工翻译 教程
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|Sitemap|小黑屋|德云社区 |网站地图  

GMT+8, 2024-11-27 09:58 , Processed in 0.044039 second(s), 27 queries .

工业和信息化部: 粤ICP备14079481号-2

技术支持 乐数软件     版权所有 © 2014-2021 德云社区    

快速回复 返回顶部 返回列表