详解Django框架中的视图级缓存


Posted in Python onJuly 23, 2015

更加颗粒级的缓存框架使用方法是对单个视图的输出进行缓存。 django.views.decorators.cache定义了一个自动缓存视图响应的cache_page装饰器。 他是很容易使用的:

from django.views.decorators.cache import cache_page

def my_view(request):
  # ...

my_view = cache_page(my_view, 60 * 15)

也可以使用Python2.4的装饰器语法:

@cache_page(60 * 15)
def my_view(request):
  # ...

cache_page 只接受一个参数: 以秒计的缓存超时时间。 在前例中, “my_view()” 视图的结果将被缓存 15 分钟。 (注意: 为了提高可读性,该参数被书写为 60 * 15 。 60 * 15 将被计算为 900 ,也就是说15 分钟乘以每分钟 60 秒。)

和站点缓存一样,视图缓存与 URL 无关。 如果多个 URL 指向同一视图,每个视图将会分别缓存。 继续 my_view 范例,如果 URLconf 如下所示:

urlpatterns = ('',
  (r'^foo/(\d{1,2})/$', my_view),
)

那么正如你所期待的那样,发送到 /foo/1/ 和 /foo/23/ 的请求将会分别缓存。 但一旦发出了特定的请求(如: /foo/23/ ),之后再度发出的指向该 URL 的请求将使用缓存。

Python 相关文章推荐
实例解析Python设计模式编程之桥接模式的运用
Mar 02 Python
python中根据字符串调用函数的实现方法
Jun 12 Python
Windows上使用Python增加或删除权限的方法
Apr 24 Python
查看TensorFlow checkpoint文件中的变量名和对应值方法
Jun 14 Python
django最快程序开发流程详解
Jul 19 Python
Django操作session 的方法
Mar 09 Python
什么是python的自省
Jun 21 Python
python进度条显示之tqmd模块
Aug 22 Python
Python3+selenium配置常见报错解决方案
Aug 28 Python
python RSA加密的示例
Dec 09 Python
基于python定位棋子位置及识别棋子颜色
Jul 26 Python
用Python生成会跳舞的美女
Jan 18 Python
Django中的CACHE_BACKEND参数和站点级Cache设置
Jul 23 #Python
简介Django框架中可使用的各类缓存
Jul 23 #Python
浅析Python的Django框架中的Memcached
Jul 23 #Python
详解Django中的权限和组以及消息
Jul 23 #Python
在Django的模板中使用认证数据的方法
Jul 23 #Python
在Django中管理Users和Permissions以及Groups的方法
Jul 23 #Python
Django中对通过测试的用户进行限制访问的方法
Jul 23 #Python
You might like
php动态生成函数示例
2014/03/21 PHP
从零开始学YII2框架(六)高级应用程序模板
2014/08/20 PHP
PHP PDO fetch 模式各种参数的输出结果一览
2015/01/07 PHP
smarty高级特性之对象的使用方法
2015/12/25 PHP
Laravel 已登陆用户再次查看登陆页面的自动跳转设置方法
2019/09/30 PHP
php实现微信和支付宝支付的示例代码
2020/08/11 PHP
Javascript 调试利器 Firebug使用详解六
2009/07/05 Javascript
Prototype源码浅析 String部分(二)
2012/01/16 Javascript
细说javascript函数从函数的构成开始
2013/08/29 Javascript
js Math 对象的方法
2013/09/01 Javascript
JS冒泡事件的快速解决方法
2013/12/16 Javascript
js中的caller和callee属性介绍和例子
2014/06/07 Javascript
jQuery+css实现的切换图片功能代码
2016/01/27 Javascript
JS实现的系统调色板完整实例
2016/12/21 Javascript
基于Vue2实现的仿手机QQ单页面应用功能(接入聊天机器人 )
2017/03/30 Javascript
React应用中使用Bootstrap的方法
2017/08/15 Javascript
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
原生js实现淘宝放大镜效果
2020/10/28 Javascript
node+express框架中连接使用mysql(经验总结)
2018/11/10 Javascript
一篇文章,教你学会Vue CLI 插件开发
2019/04/17 Javascript
js实现随机抽奖
2020/03/19 Javascript
[06:07]刀塔密之二:攻之吾命受之吾幸
2014/07/03 DOTA
用Python和MD5实现网站挂马检测程序
2014/03/13 Python
scrapy自定义pipeline类实现将采集数据保存到mongodb的方法
2015/04/16 Python
python使用电子邮件模块smtplib的方法
2016/08/28 Python
实例讲解python中的序列化知识点
2018/10/08 Python
Python 元组拆包示例(Tuple Unpacking)
2019/12/24 Python
在python中list作函数形参,防止被实参修改的实现方法
2020/06/05 Python
乌克兰香水和化妆品网站:Notino.ua
2018/03/26 全球购物
.NET初级开发工程师面试题
2014/04/18 面试题
《动手做做看》教学反思
2014/04/09 职场文书
灰雀教学反思
2014/04/28 职场文书
中国合伙人观后感
2015/06/02 职场文书
研究生学习计划书应该怎么写?
2019/09/10 职场文书
Golang之sync.Pool使用详解
2021/05/06 Golang
Java常用工具类汇总 附示例代码
2021/06/26 Java/Android