详解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 遍历字典时删除元素报异常的问题
Sep 11 Python
python读取与写入csv格式文件的示例代码
Dec 16 Python
python3使用scrapy生成csv文件代码示例
Dec 28 Python
Python数据持久化shelve模块用法分析
Jun 29 Python
Django 项目重命名的实现步骤解析
Aug 14 Python
Pytorch 多块GPU的使用详解
Dec 31 Python
TensorFlow 显存使用机制详解
Feb 03 Python
PyQt5 界面显示无响应的实现
Mar 26 Python
Pytorch转onnx、torchscript方式
May 25 Python
Python中格式化字符串的四种实现
May 26 Python
利用Python批量识别电子账单数据的方法
Feb 08 Python
深入理解python协程
Jun 15 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 数据库字段复用的基本原理与示例
2011/07/22 PHP
PHP获取当前页面URL函数实例
2014/10/22 PHP
php自定义hash函数实例
2015/05/05 PHP
使用PHP进行微信公众平台开发的示例
2015/08/21 PHP
JQuery DataTable删除行后的页面更新利用Ajax解决
2013/05/17 Javascript
getJSON调用后台json数据时函数被调用两次的原因猜想
2013/09/29 Javascript
JS仿百度搜索自动提示框匹配查询功能
2013/11/21 Javascript
JS window对象的top、parent、opener含义介绍
2013/12/03 Javascript
从零学jquery之如何使用回调函数
2014/05/16 Javascript
微信小程序 Nginx环境配置详细介绍
2017/02/14 Javascript
JS实现的走迷宫小游戏完整实例
2017/07/19 Javascript
微信小程序实现鼠标拖动效果示例
2017/12/01 Javascript
layui获取选中行数据的实例讲解
2018/08/19 Javascript
从零搭一个自用的前端脚手架的方法步骤
2019/09/23 Javascript
extjs图形绘制之饼图实现方法分析
2020/03/06 Javascript
[01:03:36]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第二场 1月26日
2021/03/11 DOTA
Python中的异常处理学习笔记
2015/01/28 Python
python实现class对象转换成json/字典的方法
2016/03/11 Python
Python的Flask框架应用程序实现使用QQ账号登录的方法
2016/06/07 Python
Python实现的矩阵类实例
2017/08/22 Python
Python中的defaultdict与__missing__()使用介绍
2018/02/03 Python
Flask框架通过Flask_login实现用户登录功能示例
2018/07/17 Python
python write无法写入文件的解决方法
2019/01/23 Python
浅析pip安装第三方库及pycharm中导入第三方库的问题
2020/03/10 Python
Python decorator拦截器代码实例解析
2020/04/04 Python
PyTorch在Windows环境搭建的方法步骤
2020/05/12 Python
pip已经安装好第三方库但pycharm中import时还是标红的解决方案
2020/10/09 Python
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
营业经理岗位职责
2013/11/10 职场文书
投标担保书范文
2014/04/02 职场文书
社区党员志愿服务活动方案
2014/08/18 职场文书
求职自我评价范文100字
2014/09/23 职场文书
2014年护理部工作总结
2014/11/14 职场文书
通知的格式范文
2015/04/27 职场文书
详解如何修改nginx的默认端口
2021/03/31 Servers
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android