详解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实现ip查询示例
Mar 26 Python
python根据京东商品url获取产品价格
Aug 09 Python
Python抓取电影天堂电影信息的代码
Apr 07 Python
Python 装饰器深入理解
Mar 16 Python
python 图像平移和旋转的实例
Jan 10 Python
PythonWeb项目Django部署在Ubuntu18.04腾讯云主机上
Apr 01 Python
python 通过可变参数计算n个数的乘积方法
Jun 13 Python
Django Serializer HiddenField隐藏字段实例
Mar 31 Python
解决django框架model中外键不落实到数据库问题
May 20 Python
Python3爬虫关于识别点触点选验证码的实例讲解
Jul 30 Python
Python pandas读取CSV文件的注意事项(适合新手)
Jun 20 Python
Django REST framework 限流功能的使用
Jun 24 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来检测proxy
2006/10/09 PHP
php二分查找二种实现示例
2014/03/12 PHP
PHP编程之设置apache虚拟目录
2016/07/08 PHP
支付宝服务窗API接口开发php版本
2016/07/20 PHP
php pdo操作数据库示例
2017/03/10 PHP
关于Anemometer图形化显示MySQL慢日志的工具搭建及使用的详细介绍
2020/07/13 PHP
js变量作用域及可访问性的探讨
2006/11/23 Javascript
详解JavaScript中数组的相关知识
2015/07/29 Javascript
JavaScript判断DIV内容是否为空的方法
2016/01/29 Javascript
JavaScript中的原型prototype完全解析
2016/05/10 Javascript
jQuery中的ready函数与window.onload谁先执行
2016/06/21 Javascript
浅谈JavaScript中的分支结构
2016/07/01 Javascript
一种基于浏览器的自动小票机打印实现方案(js版)
2016/07/26 Javascript
用js写的一个路由(简单实例)
2016/09/24 Javascript
浅谈js原生拖放
2016/11/21 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
jQuery实现CheckBox全选、全不选功能
2017/01/11 Javascript
JS模拟实现ECMAScript5新增的数组方法
2017/03/20 Javascript
JavaScript实现form表单的多文件上传
2020/03/27 Javascript
js实现随机点名小功能
2017/08/17 Javascript
Vue.js自定义事件的表单输入组件方法
2018/03/08 Javascript
简化版的vue-router实现思路详解
2018/10/19 Javascript
javascript 易错知识点实例小结
2020/04/25 Javascript
[03:10]超级美酒第四天 fy拉比克秀 大合集
2018/06/05 DOTA
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
2019/08/19 Python
关于pymysql模块的使用以及代码详解
2019/09/01 Python
施华洛世奇德国官网:SWAROVSKI德国
2017/02/01 全球购物
世界上最好的足球商店:Unisport
2019/03/02 全球购物
庆祝教师节活动方案
2014/01/31 职场文书
学期个人自我总结
2015/02/13 职场文书
2015年八一建军节活动总结
2015/03/20 职场文书
建筑工程催款函
2015/06/24 职场文书
新店开张宣传语
2015/07/13 职场文书
初中班主任教育随笔
2015/08/15 职场文书
Python Parser的用法
2021/05/12 Python
Python中time标准库的使用教程
2022/04/13 Python