详解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 continue语句用法实例
Mar 11 Python
详解Python的Django框架中的通用视图
May 04 Python
在Django框架中编写Contact表单的教程
Jul 17 Python
python shell根据ip获取主机名代码示例
Nov 25 Python
python numpy 一维数组转变为多维数组的实例
Jul 02 Python
10 分钟快速入门 Python3的教程
Jan 29 Python
在pytorch中为Module和Tensor指定GPU的例子
Aug 19 Python
Python目录和文件处理总结详解
Sep 02 Python
三个python爬虫项目实例代码
Dec 28 Python
pytorch 实现查看网络中的参数
Jan 06 Python
关于python中remove的一些坑小结
Jan 04 Python
Python机器学习工具scikit-learn的使用笔记
Jan 28 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的栏目导航程序
2006/10/09 PHP
解析PHP自带的进位制之间的转换函数
2013/06/08 PHP
解析yii数据库的增删查改
2013/06/20 PHP
php实现的支持imagemagick及gd库两种处理的缩略图生成类
2014/09/23 PHP
PHP中危险的file_put_contents函数详解
2017/11/04 PHP
php支付宝APP支付功能
2020/07/29 PHP
自己开发Dojo的建议框架
2008/09/24 Javascript
一组JS创建和操作表格的函数集合
2009/05/07 Javascript
5个javascript的数字格式化函数分享
2011/12/07 Javascript
js 实现日期灵活格式化的小例子
2013/07/14 Javascript
仿百度联盟对联广告实现代码
2014/08/30 Javascript
浅谈重写window对象的方法
2014/12/29 Javascript
js实现无限级树形导航列表效果代码
2015/09/23 Javascript
js过滤HTML标签完整实例
2015/11/26 Javascript
jquery选择器中的空格与大于号>、加号+与波浪号~的区别介绍
2016/06/24 Javascript
fullpage.js全屏滚动插件使用实例
2016/09/06 Javascript
使用vue.js写一个tab选项卡效果
2017/03/25 Javascript
Vuejs仿网易云音乐实现听歌及搜索功能
2017/03/30 Javascript
详解vue.js全局组件和局部组件
2017/04/10 Javascript
React中嵌套组件与被嵌套组件的通信过程
2018/07/11 Javascript
jQuery实现鼠标移入显示蒙版效果
2020/01/11 jQuery
JavaScript枚举选择jquery插件代码实例
2020/11/17 jQuery
[02:25]DOTA2英雄基础教程 熊战士
2014/01/03 DOTA
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
python模拟登录百度代码分享(获取百度贴吧等级)
2013/12/27 Python
Python实现将目录中TXT合并成一个大TXT文件的方法
2015/07/15 Python
Python常用的内置序列结构(列表、元组、字典)学习笔记
2016/07/08 Python
python matplotlib库绘制条形图练习题
2019/08/10 Python
Java如何基于wsimport调用wcf接口
2020/06/17 Python
无需压缩软件,用python帮你操作压缩包
2020/08/17 Python
一文带你了解Python 四种常见基础爬虫方法介绍
2020/12/04 Python
HTML5中使用postMessage实现Ajax跨域请求的方法
2016/04/19 HTML / CSS
Sephora丝芙兰菲律宾官方网站:购买化妆品和护肤品
2017/04/05 全球购物
德国购买踏板车网站:Microscooter
2019/10/14 全球购物
2014年幼儿园个人工作总结
2014/11/10 职场文书
检讨书范文2000字
2015/01/28 职场文书