Django是我最喜欢的python web框架.我尝试过其他像pylons,web2py,nevow等.
但我从来没有热情地看过TurboGears.
现在TG2没有测试版,我可以尝试一下.我想知道与Django相比有哪些优点和缺点.
TG2有几个我认为很重要的优点:
多数据库支持
分片/数据分区支持
长期支持聚合,多列主键
一个为您处理多数据库事务的事务系统
一个适用于以上所有内容的管理系统
开箱即用支持可重复使用的模板片段
一种简单的方法,用于创建可重用的模板标记库
使用非标准组件的灵活性更高
还有更多,但我认为知道Django比TG2有一些优势也很重要:
更大,社区,更活跃的IRC频道
更多可重用的应用程序组件
更开发的文档
所有这一切都意味着开始使用Django比使用TG2更容易,但我个人认为你获得的额外功能和灵活性是值得的.但是你的需求可能总是不同的.
TG2采用Pylons并更改一些默认值 - 对象调度而不是Routes,Genshi而不是Mako.他们认为只有一种方法可以做到这一点,因此应用程序可以依赖于任何TurboGears网站的相同API.
TG2和Django都区分了网站和组件,因此您最终也会看到TurboGears的可重用构建块.
Django使用自己的处理程序进行HTTP,路由,模板和持久化.Django还拥有出色的文档和成熟的社区.
的TurboGears默认为最佳的品种库,这显然是粘贴,对象调度,元史,和SQLAlchemy的.这种理念产生了一个更好的全方位工具集,但存在不稳定的风险 - 因为这意味着如果出现更好的库,就会抛弃向后兼容性.
优点.
SQLAlchemy> django ORM
开箱即用的多种模板语言(genshi,mako,jinja2)
更多WSGI友好
Object Dispatch> routes> regexp routing.您可以使用TG2获得前2个
几乎所有组件都是可选的,您可以保留核心并使用任何ORM,模板,auth库等.
Sprox> django形式
缺点. - 管理员更基本(没有内联对象!) - 更少的第三方应用程序 - "应用程序"系统仍在制作中. - 鉴于它的模块化,您需要阅读来自不同来源的文档(SQLAlchemy,Genshi或Mako,repoze.who,Pylons等)