随想录(用python开发网站)
2015-01-12 09:12
253 查看
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
在Linux上,利用python开发网站是一件很简单的事情。目前,支持python进行网站开发的框架有webpy、django、tornado。各位同学可以按照自己的喜好灵活地进行选择。就我个人而言,我比较喜欢webpy这样一个框架。
目前,关于webpy的学习内容都在webpy.org网站上。网站不但有cookbook,还有相关的的demo代码,很是方便。下面给出的demo工程也是来自于webpy的实例代码。它包含了基本的sql创建语句、python代码、html模板等等。
sql语句如下所示,
模板的代码如下所示,其中templates/base.html为,
templates/index.html为,
相关的python代码如下所示。其中数据库操作model.py为,
而相关的网站逻辑代码为todo.py,内容如下,
在Linux上,利用python开发网站是一件很简单的事情。目前,支持python进行网站开发的框架有webpy、django、tornado。各位同学可以按照自己的喜好灵活地进行选择。就我个人而言,我比较喜欢webpy这样一个框架。
目前,关于webpy的学习内容都在webpy.org网站上。网站不但有cookbook,还有相关的的demo代码,很是方便。下面给出的demo工程也是来自于webpy的实例代码。它包含了基本的sql创建语句、python代码、html模板等等。
sql语句如下所示,
CREATE TABLE todo ( id INT AUTO_INCREMENT, title TEXT, primary key (id) );
模板的代码如下所示,其中templates/base.html为,
$def with (page) <html> <head> <title>Todo list</title> </head> <body> $:page </body> </html>
templates/index.html为,
$def with (todos, form) <table> <tr> <th>What to do ?</th> <th></th> </tr> $for todo in todos: <tr> <td>$todo.title</td> <td> <form action="/del/$todo.id" method="post"> <input type="submit" value="Delete"/> </form> </td> </tr> </table> <form action="" method="post"> $:form.render() </form>
相关的python代码如下所示。其中数据库操作model.py为,
import web db = web.database(dbn='mysql', db='test', user='root', pw='123456') def get_todos(): return db.select('todo', order='id') def new_todo(text): db.insert('todo', title=text) def del_todo(id): db.delete('todo', where="id=$id", vars=locals())
而相关的网站逻辑代码为todo.py,内容如下,
""" Basic todo list using webpy 0.3 """ import web import model ### Url mappings urls = ( '/', 'Index', '/del/(\d+)', 'Delete' ) ### Templates render = web.template.render('templates', base='base') class Index: form = web.form.Form( web.form.Textbox('title', web.form.notnull, description="I need to:"), web.form.Button('Add todo'), ) def GET(self): """ Show page """ todos = model.get_todos() form = self.form() return render.index(todos, form) def POST(self): """ Add new entry """ form = self.form() if not form.validates(): todos = model.get_todos() return render.index(todos, form) model.new_todo(form.d.title) raise web.seeother('/') class Delete: def POST(self, id): """ Delete based on ID """ id = int(id) model.del_todo(id) raise web.seeother('/') app = web.application(urls, globals()) if __name__ == '__main__': app.run()
相关文章推荐
- 正在开发的Python网站之自定义后台一
- Python 网站开发(一)环境搭建
- python之web开发二:用Python+Django在Eclipse环境下开发web网站【第一个开发的小案例,按照文章可以成功开发web】
- 用Python+Django在Eclipse环境下开发web网站【转】
- 用Python+Django在Eclipse环境下开发web网站
- python在S60系统上开发相关的网站
- Python+Django+Eclipse 在Windows下快速开发自己的网站
- 学习Python:做数据科学还是网站开发?
- 用Python+Django在Eclipse环境下开发web网站
- Python Django Mac 环境配置---(网站开发)
- Python 网站开发(一)环境搭建
- Python 网站开发
- 微信公众平台开发(免费云BAE+高效优雅的Python+网站开放的API)
- Python+Django+Eclipse 在Windows下快速开发自己的网站
- 用Python+Django在Eclipse环境下开发web网站
- 东奎博客-Python 网站开发(一)环境搭建
- python + django + pydev +eclipse 搭建网站开发环境
- django+python开发的网站怎么静态引用img图片
- 用Python+Django在Eclipse环境下开发web网站
- Python+Django+Eclipse 在Windows下快速开发自己的网站