Differences between revisions 2 and 6 (spanning 4 versions)
Revision 2 as of 2008-09-01 05:46:34
Size: 731
Editor: qingfeng
Comment:
Revision 6 as of 2008-09-21 14:14:27
Size: 1770
Editor: lizzie
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
##language:zh ##language:zh
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! 了。

##language:zh

status

草稿

HuangYi 清风; 100%

TableOfContents

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! 了。

ObpLovelyPython/PCS302old (last edited 2009-12-25 07:16:23 by localhost)