WebProgramming - PythonInfo Wiki

1. CherryPy

2. Snakelets

3. Karrigell

KarriGell -- 永远安心工作的“推车”

4. 堂吉诃德

5. TurboGears

6. Django

  • DjanGo -- 悄悄开发成功的高级 Web Framework, 比以前的,更加注重整体设计

7. 悟空智轮

  • WukooPy -- lihui 混合 Karrigell 和 Quixote 创造的 一个应用轮子

    • 哈哈哈!别直接龙了,叫 蟒龙是也乎?

8. ikaaro

  • IkaaRo -- 从工具包入手的CMS 构建包

9. atocha

  • atocha -- 一个围绕表单的web framework

    • 感觉还不错,可以考虑嵌在其它的web应用中用来生成表单 -- Limodou

10. webpy

11. pylons

  • pylons

12. paste

  • paste

13. Myghty

14. colubrid

  • colubrid

15. aquarium

  • aquarium

Pythonic Web 应用平台对比

16. TurboGears vs Django

对比集中在高压力环境稳定性sqlobject的发展结合

16.1. gasolin 曰

发件人: [email protected] <[email protected]> 
回复: [email protected]
收件人: "python.cn" <[email protected]>
日期: 2005-9-19 下午9:32
主题: TurboGears vs Django

这几天从limodou兄的blog中看到 TurboGears 这个框架,看完演示教程后相当为之惊艳.

Django 跟 TurboGears 的出现提供了一个相当 pythonic 的解决方案 (python + HTML :D).

不需要使用资料库查询语言(SQL)或额外的资料库设计修改工具是一大特色.

TurboGears (Python) 是在 cherrypy +SQLObject等的基础之上整合相当成功的框架.

其计划的核心概念是不重复发明轮子, 而是把 python中的各轮子组成有用的框架.计划主要的工作是提供简化的安装, 设定, 操作,与文件.

  • 我们的 WuKooPy 也是这意思,不过关注的深度比较浅 -- ZoomQuiet

之前 Ruby on rails 超热的时候似乎 python 社群有个 SUBWAY计划想达成类似的事情,但一听就知道是想复制 ROR 的计划,并未提出相当的成果.

两者较不同的是 Django提供预设的资料库增删修改介面, 而 TGP似乎还没发展这块.

比起 Django 来说, TurboGears 更吸引我的是整合 AJAX 支援,

Django 跟 TurboGears 相比无论安装, 使用上都复杂许多,而 Django 从头开发也意味着目前 python web开发社群要使用这框架也得多花费心力去学习.

TGP 是由 python script 组成的 controller 呼叫 SQLObject来读出资料库中的资料,再以字典形式传值到样板中当作动态语言的变数.

达成资料库(model)->controller->template (View) 的 MVC 架构

传出的格式如

{data=content, pagename=page.pagename}

这样一次收集所有用到的参数,接收用

<div py:replace="data"/> Page text goes here. </div>

这样在标签中加"py:replace"的格式插入参数,

Ruby on rails 或 Django 每加一页新的资料, 要处理的 MVC关连似乎不及TurboGears 承袭 cherrypy架构(不知有无说错?)的简单明了

TurboGears 教程中是由单一的 controller (标准的 python class) 呼叫 SQLObject来读出资料库中的资料, 再以字典形式传值到样板中当作动态语言的变数.

 达成资料库(model)--controller--template (View)  的 MVC 架构.

  • 由 controller 传出的格式如 {data=content,pagename=page.pagename}

一次收集网页样板将用到的 data 跟pagename 参数.

网页样板 template 接收用

<div py:replace="data">内容显示在这里</div>

实际显示时会将"内容显示在这里"这段替换成资料集"data"中的内容.

要在网页样板中调用这几个参数有两个方式.

  • 第一种是可以在标签中加py:replace="data", 来插入 data字典参数;

  • 或是使用类似一般动态语言给参数的方式 ${data} 插入data 字典参数.

    • 注意第二种的格式还是跟 python调用字典的感觉很像.

间中用到的 HTML, ini 都算是基本的内容,用起来没什么要另外学东西的负担.

Django (或 Ruby on rails)每加一页新的资料,都要分别处理对应的 controller.关连似乎不及 TurboGears 承袭 cherrypy 架构可使用单一controller 的简单明了(不知有无说错?)

  • 因此我认为相比之下 TurboGears 成功的机率更大些.

16.2. limodou 曰

回复: [email protected] 
收件人: python-chinese列表 <[email protected]>
日期: 2005-11-14 上午10:24
主题: [python-chinese] Django vs. TurboGears

Django vs. TurboGears

看到列表中讨论 Django 和 TurboGears 的多了起来,我想就这两个web framework提出自已的一些看法,因为哪个都算不上精通,只是对某些方面多一些罢了,至今天除了按照django的教程做了一下,某它的就没做过。TurboGears方面也只是学过CherryPy而已,不过我从我个人的关注角度出来,希望对它们进行比较一下,大家可以补充,让比较更客观。另外因为我对DjanGo关注稍多一些,可能对于turbogears有些不正确的观点,请大家见谅。

  • DjanGoTurboGears 的优点

    1. 自动的admin界面,有用户和组的管理,这些代码不用你写了
    2. generic view,减少你写view的代码,模板当然还是要的
    3. 模块及模板均支持i18n。
    4. url采用正则表达示很有创意,这样可以规则你的url。另外通过正则表达式可以构造与方法调用无直接关系的链接形式,搜索引擎支持好。
    5. DjanGo的模板还可以自已扩展,很有趣,可以增加新的tag和filter,而且写起来挺简单。

    6. 有middleware,可以自已编写
    7. 应用安装方便
    8. 开发团队集中,目标一致
    9. 已经有网站的应用
  • TurboGearsDjanGo的优点

    1. ORM模块采用sqlobject,比DjanGo中的要成熟

    2. 支持ajax
    3. 充分利用了setuptools工具
    4. 宣传力度大,人数多,相对DjanGo活跃

  • 共同的优点:

    1. 文档做得都不错
    2. 都象ROR一样提供相应的命令行工具

  • 我的感觉是: -- ZoomQuiet

    • TG 是聪明的大杂烩,但是每种主料发展的不均衡一定会影响到TG的,当然集成 Ajax 是非常吸引人的
    • Dj 是一个美妙的新轮子 MTV 非常炫,但是远离了Pythonic, 回到Unix 神秘的命令行时代了,而且DB 操作调试,更加没谱了……
  • 这两天在看 TG 感觉到 TG并没有因为 它的杂而影响到他,相反的很多组建开始依赖 TG 来开发了,而且 TG 开始引入 Plugin的概念了,原来集成在 tg里面的 kid 模板组建 从 r459 开始分离出了TG 这样 TG现在就有了很多的 Template engine 了 TurboCheetah ,TurboStan TurboKid,TurboZpt ,这些个 Template engine 都会为 TG 带来更多的新鲜血液,吸引更多的开发者. 还有 ORM ,估计 Kevin Dangoor 也会渐渐的将 SQLObject作为 plugin来集成在 TG里面了,这样更多 好东西都会慢慢加入 TG了,但是估计CherryPy是换不掉了,现在看tg的maillist Kevin Dangoor 和 Cherrypy的团队合作很密切.呵呵,然后就是很让人期待的事情了 Kevin 打算在 pycon2006之前发布 1.0版本,现在每天就是看 TurboGears Repository Commits 都有些什么更新.

还有 TG的 Toolbox组件也非常的让人期待 modelDesigner的出现使得建模更加的快速和简单了,真正突显出了 TG 的快速开发. by bib

17. P2P

18. P4EE

Python 企业环境应用探讨 Python for Enterprise Environment

18.1. mod_python

与Apache 紧密结合的支持组件!终于可以完好运行了

18.2. Zope

18.3. Dabo

  • DaBo -- 又一个默默发展的快速开发平台!

19. Pythonic 模板

19.1. ClearSilver

ClearSilver是一个高性能的模版系统,让我们看看他的使用网站,就知道他的表现有多好。

  • Bloglines
  • Google Groups
  • Yahoo Groups

Clearsilver-Architecture

19.2. 印度豹

cheetah-face-black-medium CheetahTemplateOrg -- 一个历史悠久的JAVA 模板系统的衍生,可以生成一切文本文件

19.3. Myghty Google 的利器

MyghtyOrg -- 一个高速模板系统,几乎可以独立作为web 应用平台来使了

PyWebAppFrameworks (last edited 2005-11-21 08:36:04 by ZoomQuiet)