Differences between revisions 3 and 4
Revision 3 as of 2009-11-28 15:03:51
Size: 5597
Editor: Elias
Comment: 删除对PageComment2组件的引用
Revision 4 as of 2009-12-25 07:15:40
Size: 5597
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:
[[TableOfContents]] <<TableOfContents>>
Line 6: Line 6:
[[Include(ZPyUGnav)]] <<Include(ZPyUGnav)>>
Line 90: Line 90:
创建 by -- ZoomQuiet [[[DateTime(2009-01-06T01:05:55Z)]]] 创建 by -- ZoomQuiet [<<DateTime(2009-01-06T01:05:55Z)>>]

Zop3&bfg

潘俊勇

<[email protected]>

reply-to        [email protected]
to      python-cn`CPyUG`华蟒用户组 <[email protected]>
date    Mon, Jan 5, 2009 at 23:57
subject [CPyUG:75931] Re: 有正在学习和使用Zope3的朋友吗?

哈,大家都说zope3的坏话,我也准备曲线救国了。

我现在推荐大家用bfg,不给点有内容的东西,大家就不肯跟风了:

这个是bfg的示例站点,源代码在这里:

MVT中:

不知道大家有没有耐心去看代码,不要紧,科普工作会继续下去的,我们会花力气推这个bfg的

Limodou feeling

limodou <[email protected]>
reply-to        [email protected]
to      [email protected]
date    Tue, Jan 6, 2009 at 08:49
subject [CPyUG:75943] Re: 有正在学习和使用Zope3的朋友吗?

> 不如老潘写一个Hello, bfg的入门教程啊。

刚看了一点代码谈点个人感受和问题:

  • 1. 不知道bfg与zope或其它框架的具体关系如何?
    • <<< 潘俊勇 <[email protected]> ~ 大家都在骂Zope,骂习惯了Zope 2,继续骂Zope 3,那Zope社区只有顺应潮流,继续改造,于是有了bfg;bfg是对zope 3和zope2的重新改写,更象pylons,但是用了zope的很多思想,但是非常的WSGI。bfg依赖非常少的,已经投入了python社区了。如果再骂bfg,就没有人道了。。。。Zope社区是知道自己的矮的,但是bfg让整个zope社区扬眉吐气。。。

  • 2. 看到bfg使用了sqlalchemy, paste, webob,formencode,那么好象使用zope相关的东西:Interface, configure.zcml, permission,theme(?)
    • <<< 潘俊勇 <[email protected]> ~ paste和webob是内置的。但是sqlalchemy是可选的,也可以用zodb的。Interface, zcml这套东西,只有4个左右的依赖包,是Zope组件架构的一部分,但是不属于zope特有,已经是整个python社区的了。theme是另外的一个独立的wsgi filter产品,是可选的。

  • 3. 似乎没有ZClass简单啊。比如:url的配置和permission好象是在configure.zcml,如何自定义url?对于模板的处理好象是使用zpt,因为看到有tal了。不过模板不能自动映射,要使用象render_template_to_response,这样的函数,的确是django的风格,但也说明没有自动模板映射,即不能只返回数据,自动查找对应的模板。
    • <<< 潘俊勇 <[email protected]> ~ ZClass是几百年前的事情了。。。Zope 2好象都不支持了吧,我估计。。。我就没用过这东东;permission是zcml来配置的,但ZCML不是必须。但是这个也有其他的python方法,类似ROR的bfg是集大家所长的,zope社区不傻,开发bfg的那帮人,是zope社区精华中的精华来的

  • 4. 部分配置是使用paste来处理的,因此要有一个单独的ini文件,这样与configure.zcml不是一体的,感觉不统一。当然也表明了,bfg中使用的外部的东西都可以不用。
    • <<< 潘俊勇 <[email protected]> ~ zcml是组件架构的一部分,其实不是配置,是用于组件注册。ZCMl更多程序一些。ZCML不是必须是可选的。安装这个包后,就不需要写ZCML了:

  • 因上从上面,我看到了部分zope的影子,部分pylons的风格。不知道zope的东西还剩多少:
  • Interface,configure.zcml, permission, theme? 这些哪些算是bfg的特色,与其它的框架的区别在哪里?能否再扫扫盲。
    • <<< 潘俊勇 <[email protected]> ~ 看到的这个例子,几乎没有zope的影子。但是zope的外衣,可以一层一层披上。进而:

    • 1. 一经配置,可支持对象发布,也就是通过keys()来找子对象,无须url到代码的映射,这个是zope最有特色的了
      2. 可使用ZODB,这个不说了
      3. zope的事务支持,当然要装一个filter
      4. zope的参数转换,比如 a:int=2,会把a转换为整数,有个filter的
    • 有非常非常多的filter,整个zope都被wsgi化了,都在这里:http://svn.repoze.org/


反馈

创建 by -- ZoomQuiet [2009-01-06 01:05:55]

MiscItems/2009-01-06 (last edited 2009-12-25 07:15:40 by localhost)