cache
模块¶
基本缓存类和方法¶
缓存-与其他对象交互的通用缓存对象
cacheinRAM-在RAM中提供缓存
cacheondisk-在磁盘上提供缓存
memcache也可以通过不同的模块来使用(请参见gluon.contrib.memcache)
当web2py在google app引擎上运行时,缓存将由gae memcache提供(请参见gloon.contrib.gae_memcache)
- class gluon.cache.Cache(request)[源代码]¶
基类:
object
设置通用缓存,创建cacheinram和cacheondisk的实例。如果是GAE,将使用glion.contrib.gae_memcache。
self.ram是cacheinram的一个实例
self.disk是cacheondisk的一个实例
- action(time_expire=300, cache_model=None, prefix=None, session=False, vars=True, lang=True, user_agent=False, public=True, valid_statuses=None, quick=None)[源代码]¶
更适合缓存操作
警告
实验!
目前只有http 1.1兼容参考:http://code.google.com/p/doctype-mirror/wiki/articlehttpcaching
- 参数
time_expire (int) -- 与@缓存相同
cache_model (str) -- 与@缓存相同
prefix (str) -- 向计算键添加前缀
session (bool) -- 将response.sessionu id添加到密钥
vars (bool) -- 添加request.env.query_字符串
lang (bool) -- 添加T.接受的语言
user_agent (bool or dict) -- 如果是真的,则添加是移动的,并且是关键的平板电脑。传递dict以使用所有需要的值(使用str(.items())(例如,user_agent=request.user_agent())。仅在会话不为真时使用
public (bool) -- 如果为false,则强制缓存控件为“private”
valid_statuses -- 默认情况下,只缓存以1、2、3开头的状态代码。传递打开缓存的显式状态列表
quick -- session,vars,lang,user agent,public:用缩写快速覆盖,例如“svlp”或“vlp”或“vlp”
- autokey = ':%(name)s:%(args)s:%(vars)s'¶