[小工具]生辰八字计算online(Ver.4)

虽然早就听说过web.py,不过之前试过感觉还不太成熟,最近又去看了一下,貌似已经相当不错了,便拿来试了试,发现非常合我胃口,迅速决定抛弃用了一年多的web2py。

这些年来从Django, TG1, Pylons, Web2py, TG2一路用过来,web.py是唯一一个web框架让我觉得:这就是我想要的。

而理由只有一个:干净。

本 来web2py已经相当接近我的要求了,除了它以外的另四个都需要安装,而且除了Django以外都需要easy_install那个家伙来安装一大堆的 依赖包,烦也烦死了,还好现在有VirtualEnv,不然真是搞死人。但是即使有VE也还是烦,每次安装都会碰到这样那样的问题,从来没有一次顺利过。 Django那套模式我不太适应,所以很早就不再用了。Web2py不提了,虽然不用安装这点比其它都好,但是DAL那是相当难用,自带的模板也不好用, 更烦的是URL映射太难看。在这些方面来说,TG/Pylons可以选择模板和ORM,Pylons的URL映射也可以做到Django那么灵活,但是 Pylons除了安装麻烦以外,需要自己做的事情实在太多。

然而这些都还不是最根本的原因,最重要的还是它们都不够干净——创建一个空项目也要产生一大堆的代码,光是研究去掉哪些部分就要花N多的时间。

而web.py没有这些问题,它不需要安装,不产生任何代码,可以根据需要选择ORM或是模板,非常的清爽干净。

于是我用它来改写原来的《[小工具]生辰八字计算online(Ver.3)》,并且已经放到了GAE上:

补充一些关于web.py发布到GAE上的几个注意事项:

第一、运行程序的语句从原来的

app.run()

改为:

main = app.cgirun()

也就是用app.cgirun函数去把GAE默认的main函数替换掉;

第二、需要预先把模板编译为Python代码:

web/template.py --compile templates

第三、在app.yaml里配置一下static和script,方法详见GAE文档。

推送到[go4pro.org]


呵呵,挺好玩的,我的是狮子座

ugg boots clearance at 2010-12-01T10:37:00+08:00