web.py开发web 第一章 Hello World

前言    

    这一系列的文章主要针对使用web.py+jinja2+sqlalchemy+formalchemy+jquery+knockout从基础到整站开发的讲解,如需对其中各个使用到的框架或模块进行了解,请google相对应的文档。

    下面先对使用到的框架或模块一一进行简单的介绍:

  1. web.py,一个python web框架,非常简洁实用,虽然没有django的诸多强大功能,但其简洁就是最强大的地方了,simple is better!
  2. jinja2,python中一个很流行的模板框架,用了它,写模板就是如此的享受。
  3. sqlalchemy,python最强大的orm,没有之一,掌握了它,数据库?so easy!(我还会回来嗒~)
  4. formalchemy,配套sqlalchemy的表单框架,可以根据sqlalchemy中数据表的定义生成html表单,还在写input么?你out了!
  5. jquery,这个我想我就不用介绍了吧...
  6. knockout,这是一个mvvm框架,写复杂ui就是如此洒脱.

正文

    OK,web开发下需要用的工具都有了,剩下的就是怎么把这些强大的工具应用到我们的开发中了。如同很多的编程语言教程一样,我们先从Hello World开始,首先是最简单的输出"Hello World"页面。

main.py

#-*- coding:utf-8 -*-
import web

#定义url,将地址映射到对应的类
urls = (
    "/", "index",
)

app = web.application(urls, globals())

#定义index类
class index:
    #get请求
    def GET(self):
        return "Hello World"

if __name__ == "__main__":
    app.run()

    然后在你的命令行下,运行"python main.py",接着在浏览器输入地址"http://127.0.0.1/"就可以看到Hello World的字样了。

    web.py使用了类来写视图,这是一个非常赞的设计,这样我们可以通过定义基类来实现很多功能,例如在视图开始前自动检查用户权限,将一些常用的方法写成基类方法,就能很方便的进行调用,甚至在一些特殊需求下,可以通过一个类视图,来衍生出很多页面,既提高了开发速度,也提高了可维护性

你可能感兴趣的:(python,web开发,web.py)