Size: 731
Comment:
|
Size: 1767
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
###format rst ||status|| 草稿 ||清风; 100%|| |
||status|| 草稿 ||HuangYi 清风; 100%|| |
Line 8: | Line 8: |
== web.py == === 概述 === web.py 是 Python 所有 Web 开发框架中,最为简洁,最为容易上手的一个.全部框架只有一个文件构成.可以快速>的建立 Web 原型.和学习Web开发.可以说,麻雀虽小五脏俱全. |
= Web.py = |
Line 12: | Line 10: |
=== Hello World! === 使用web.py 写个'hello world' |
== 啥是 web.py == |
Line 15: | Line 12: |
又是一个超简洁的 web 框架,但麻雀虽小五脏俱全,web.py 自带了一个现代 MVC 框架需要的所有内容:基于正则表达式的URL分发器、显示区分请求方法的控制器、cheetah模板引擎,甚至还有一个DB工具。其他的像开发服务器、调试工具、form库等也是一应具全的。 == 下载安装 == 从这里 http://webpy.org/install 找到最新版本的下载地址,并下载之。解压执行 {{{python setup.py install}}} 。 == 开始写程序 == 下面就是一个很典型的 web.py 程序了。 |
|
Line 16: | Line 22: |
# -*- coding: utf-8 -*- # 导入web.py |
|
Line 18: | Line 26: |
urls = ("/.*", "hello") app = web.application(urls, globals()) |
# 使用正则表达式定义 URL 与控制器类之间的映射 # 正则表达式中的 group 会被映射为控制器方法的参数 urls = ( '/(.*)', 'hello' ) |
Line 21: | Line 32: |
class hello: def GET(self): return 'Hello, world!' |
# 定义控制器类 class hello: # 处理 GET 请求,参数是 web.py 根据url的正则表达式解析出来的 def GET(self, name): if not name: name = 'world' print 'Hello,', name+'!' # 处理 POST 请求 def POST(self): # 获取客户端提交的数据 i = web.input() # 重定向URL web.seeother('hello?name='+i.name) |
Line 25: | Line 45: |
if __name__ == "__main__": app.run() |
# 启动开发服务器,启动该web程序 if __name__ == "__main__": web.run(urls, globals()) |
Line 29: | Line 49: |
== 相关资料 == * [http://webpy.org/cookbook web.py Cook Book] ~ 中文翻译 |
和 cherrypy 一样,要启动,直接执行这个程序就可以了。 把上面这个程序以 utf-8 编码保存为 hellowold.py 然后执行:{{{python helloworld.py}}} 。 这个时候你访问 http://localhost:8080/you 就可以看到 Hello you! 了。 |
status |
草稿 |
HuangYi 清风; 100% |
Web.py
啥是 web.py
又是一个超简洁的 web 框架,但麻雀虽小五脏俱全,web.py 自带了一个现代 MVC 框架需要的所有内容:基于正则表达式的URL分发器、显示区分请求方法的控制器、cheetah模板引擎,甚至还有一个DB工具。其他的像开发服务器、调试工具、form库等也是一应具全的。
下载安装
从这里 http://webpy.org/install 找到最新版本的下载地址,并下载之。解压执行 python setup.py install 。
开始写程序
下面就是一个很典型的 web.py 程序了。
1 # -*- coding: utf-8 -*-
2 # 导入web.py
3 import web
4
5 # 使用正则表达式定义 URL 与控制器类之间的映射
6 # 正则表达式中的 group 会被映射为控制器方法的参数
7 urls = (
8 '/(.*)', 'hello'
9 )
10
11 # 定义控制器类
12 class hello:
13 # 处理 GET 请求,参数是 web.py 根据url的正则表达式解析出来的
14 def GET(self, name):
15 if not name: name = 'world'
16 print 'Hello,', name+'!'
17 # 处理 POST 请求
18 def POST(self):
19 # 获取客户端提交的数据
20 i = web.input()
21 # 重定向URL
22 web.seeother('hello?name='+i.name)
23
24 # 启动开发服务器,启动该web程序
25 if __name__ == "__main__": web.run(urls, globals())
和 cherrypy 一样,要启动,直接执行这个程序就可以了。 把上面这个程序以 utf-8 编码保存为 hellowold.py 然后执行:python helloworld.py 。 这个时候你访问 http://localhost:8080/you 就可以看到 Hello you! 了。