web.py框架入门
在使用微信搭建公众平台的时候,使用的是web.py这个方便简单的框架,学习一下。
框架文档:http://webpy.org/docs/0.3/tutorial.zh-cn 按照文档的内容写一遍程序入门就没什么问题了
运行程序:cmd中--进入文件所在路径--输入 python 文件名即可运行
遇到的问题:
问题1.模板文件中,第一行必须以 $def with()开头,否则会报错
$def with (name) $if name: I just wanted to say <em>hello</em> to $name. $else: <em>Hello</em>, world!
问题2.模板文件 html中的python语句不能被注释,否则会报错。其他可以注释
问题3.网页跳转与重定向--web.seeother和web.redirect
链接:http://doc.outofmemory.cn/python/webpy-cookbook/redirect-seeother.html
class add: def POST(self): i=web.input() n=db.insert('todo',title=i.title) raise web.seeother('/')
POST方法接收到一个post并完成处理后,它将给浏览器发送一个303消息和新网址。接下来,
浏览器会对这个新网址发出GET请求,从而完成新跳转。
注意:web.seeother和web.redirect不支持0.3以下版本。
区别:
用web.redirect方法似乎也能做同样的事情,但通常来说,这并太友好。因为web.redirect发送的是301消息-
这是永久重定向。因为大多数Web浏览器会缓存新的重定向,所以当我们再次执行该操作时,会自动直接访问
重定向的新网址。很多时候,这不是我们所想要的结果。所以在提交表单时,尽量使用seeother。但是在下面要
提到的这种场合,用redirect却是最恰当的:我们已经更改了网站的网址结构,但是仍想让用户书签/收藏夹中的
旧网址不失效。(注:要了解seeother和redirect的区别,最好是看一下http协议中不同消息码的含义。)