代码改变世界

随笔档案-2012年11月26日

Web.py Cookbook 简体中文版

2012-11-26 10:11 by justjavac, 363 阅读, 收藏,
摘要: 欢迎来到web.py 0.3的Cookbook。提醒您注意:某些特性在之前的版本中并不可用。当前开发版本是0.3。格式在编排内容时,请尽量使用cookbook格式…如:###问题:如何访问数据库中的数据?###解法:使用如下代码…请注意,网址中不必含有”web”。如”/cookbook/select”,而非”/cookbook/web.select”。该手册适用于0.3版本,所以您在添加代码时,请确认代码能在新版本中工作。基本应用:Hello World提供静态文件访问理解URL控制跳转与重定向使用子应用提供XML访问从post读取原始数据高级应用用web.ctx获得客户端信息应用处理器,添加 阅读全文

Web.py Cookbook 简体中文版 - 如何使用web.background

2012-11-26 10:10 by justjavac, 241 阅读, 收藏,
摘要: 注意!!web.backgrounder已转移到web.py 3.X实验版本中,不再是发行版中的一部分。你可以在这里下载,要把它与application.py放置在同一目录下才能正运行。介绍web.background和web.backgrounder都是python装饰器,它可以让某个函式在一个单独的background线程中运行,而主线程继续处理当前的HTTP请求,并在稍后报告background线程的状态(事实上,后台函式的标准输出(stdout)被返回给启动该线程的”backrounder”)。 译注:我本来想将background thread翻译为后台线程,后来认为作者本意是想表达 阅读全文

Web.py Cookbook 简体中文版 - Application processors

2012-11-26 10:10 by justjavac, 152 阅读, 收藏,
摘要: 问题如何使用应用处理器,加载钩子(loadhooks)和卸载钩子(unloadhook)?解法web.py可以在处理请求之前或之后,通过添加处理器(processor)来完成某些操作。def my_processor(handler): print 'before handling' result = handler() print 'after handling' return resultapp.add_processor(my_processor)可以用加载钩子(loadhook)和卸载钩子(unloadhook)的方式来完成同样的操作,它们分别在请求开始 阅读全文

Web.py Cookbook 简体中文版 - 交替风格

2012-11-26 10:10 by justjavac, 216 阅读, 收藏,
摘要: 问题:你想通过数据集合动态的生成交替背景色的列表.方法:Give templetor access to theintbuilt-in and use modulo to test.code.pyweb.template.Template.globals['int'] = inttemplate.html<ul>$var i: 0$for track in tracks: $var i: ${int(self.i) + 1} <li class=" $if int(self.i) % 2: odd $else: even ">$tra 阅读全文

Web.py Cookbook 简体中文版 - 如何操作Cookie

2012-11-26 10:09 by justjavac, 178 阅读, 收藏,
摘要: 问题如何设置和获取用户的Cookie?解法对web.py而言,设置/获取Cookie非常方便。设置Cookies概述setcookie(name, value, expires="", domain=None, secure=False): name(string)- Cookie的名称,由浏览器保存并发送至服务器。value(string)-Cookie的值,与Cookie的名称相对应。expires(int)- Cookie的过期时间,这是个可选参数,它决定cookie有效时间是多久。以秒为单位。它必须是一个整数,而绝不能是字符串。domain(string)- Coo 阅读全文

Web.py Cookbook 简体中文版 - CGI deployment on Apache

2012-11-26 10:09 by justjavac, 227 阅读, 收藏,
摘要: Here are the simple steps needed to create and run an web.py application.Install web.py and flupsCreate the application as documented if __name__ == "__main__": web.run(urls, globals())For our example, let it be namedapp.py, located in/www/appand we need it accessible ashttp://server/app/a 阅读全文

Web.py Cookbook 简体中文版 - db.delete 数据删除

2012-11-26 10:08 by justjavac, 167 阅读, 收藏,
摘要: 问题在数据库中删除数据。解决办法import webdb = web.database(dbn='postgres', db='mydata', user='dbuser', pw='')db.delete('mytable', where="id=10")上面接受 “using” 和 “vars” 参数。删除方法返回被删除的影响行数。 阅读全文

Web.py Cookbook 简体中文版 - 自定义NotFound消息

2012-11-26 10:08 by justjavac, 134 阅读, 收藏,
摘要: 问题如何定义NotFound消息和其他消息?解法import weburls = (...)app = web.application(urls, globals())def notfound(): return web.notfound("Sorry, the page you were looking for was not found.") # You can use template result like below, either is ok: #return web.notfound(render.notfound()) #return web.notf... 阅读全文

Web.py Cookbook 简体中文版 - web.ctx

2012-11-26 10:08 by justjavac, 219 阅读, 收藏,
摘要: 问题如何在代码中得到客户端信息?比如:来源页面(referring page)或是客户端浏览器类型解法使用web.ctx即可。首先讲一点架构的东西:web.ctx基于threadeddict类,又被叫做ThreadDict。这个类创建了一个类似字典(dictionary-like)的对象,对象中的值都是与线程id相对应的。这样做很妙,因为很多用户同时访问系统时,这个字典对象能做到仅为某一特定的HTTP请求提供数据(因为没有数据共享,所以对象是线程安全的)web.ctx保存每个HTTP请求的特定信息,比如客户端环境变量。假设,我们想知道正在访问某页面的用户是从哪个网页跳转而来的:例子class 阅读全文

Web.py Cookbook 简体中文版 - 通过Fastcgi和lighttpd部署

2012-11-26 10:07 by justjavac, 231 阅读, 收藏,
摘要: 如果你对这个主题有任何问题,可以点击下面的链接访问相应的话题:http://www.mail-archive.com/webpy@googlegroups.com/msg02800.html下面的代码基于lighttpd 1.4.18,更高版本也可以工作Note:你可以重命名code.py为任何你自己愿意的名字,该例子还是以code.py为例。如果你还不确定你的lighttpd版本的话,你可以在命令行中使用<code>lighttpd -v</vode>查看相应的版本信息。Note: 较早版本的lighttpd可能会按照不同的方式组织.conf文件,但是它们应该遵循的是 阅读全文

Web.py Cookbook 简体中文版 - Web.py using FastCGI and Apache 2

2012-11-26 10:07 by justjavac, 204 阅读, 收藏,
摘要: RequirementsApache 2.xmod_fcgidmod_rewriteFlupNote, on CentOS compiling mod_fcgid requires apache-devel be installed (available via yum).Apache ConfigurationReplace ‘/var/www/myapp/’ with the path to your apps directoryLoadModule rewrite_module modules/mod_rewrite.soLoadModule fcgid_module modules/m 阅读全文
无觅相关文章插件,快速提升流量