- 论坛徽章:
- 0
|
本帖最后由 cdhigh 于 2013-09-11 02:04 编辑
最近简单学习了flask,对其url_for()函数很感兴趣,有了它,代码中的调转就不需要硬编码URL了,感觉这样才对的嘛
但是flask感觉有些复杂了,不合我的胃口,所以我还是坚守web.py。
web.py没有url_for()函数,怎么办?我在自己的小项目中自己山寨了一个简单的,代码如下:- def url_for(cls):
- #application为web.py的application实例
- for url,clsname in application.mapping:
- if cls == clsname:
- return url
- #使用方法:
- #比如在代码中满足某些条件则调转到'/info'页面,但是我不想在代码中写死'/info'这样的URL,则可以写如下代码
- #其中ShowInfo为实现'/info'的class
- raise web.seeother('ShowInfo')
复制代码 怎么样,很简单吧,至少在代码中不用重复写url了,仅维护一份URL列表,可以随时更改,多轻松!
如果你愿意,可以继承web.application,写在子类代码中,更面向对象化。
|
|