status |
草稿 |
清风; 100% |
Pyhton 模板系统
GenShi
- 特点:解释型模板,纯粹面向 xml,流式的处理机制,能够嵌入 python 语句和表达式,提供强大的功能。
- 从 Kid 发展而来,比 Kid 更灵活,性能也更好,实现部分 XPath,XInclude 规范。
TurboGears2.0 也将默认的模板引擎从 Kid 转为 GenShi 。
MaKo
- 特点:编译型模板,卓越的性能,将 Python 语言优雅得植入模板中,功能强大。
由 Myghty 发展而来,是对 Myghty 的重新设计和重新实现,类似 GenShi 和 Kid 的关系。
JinJa
特点:编译型模板,类似 django 模板的简洁语法,适合网页设计师使用。继承和发扬了 django 模板在安全性方面(SandBox)的考量,限制模板的能力,有[http://jinja.pocoo.org/documentation/objects.html#unsafe-methods-attributes 专门机制]防止模板修改数据和访问危险代码!
与 django 模板主要区别在于:编译 vs 解释,macro,支持 python 表达式。另外还有一些细节上的区别,见:[http://jinja.pocoo.org/documentation/fromdjango.html Differences To Django Templates]
根据 [http://jinja.pocoo.org/faq.html FAQ],性能大概三倍低于 mako,两倍高于 django 模板。
ClearSilver
ClearSilver是一个高性能的模版系统,让我们看看他的使用网站,就知道他的表现有多好。
- Bloglines
- Google Groups
- Yahoo Groups
http://www.clearsilver.net/img/misc/Clearsilver-Architecture.gif
其它
PyWork - [http://pywork.sourceforge.net/ http://pywork.sourceforge.net]
Cheetah - http://www.unrealtower.org/mycheetah
Subway - http://subway.python-hosting.com/
Spyce - [http://spyce.sf.net/ http://spyce.sf.net]