详解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 set集合类型操作总结
Nov 07 Python
深入解析Python中的变量和赋值运算符
Oct 12 Python
python读取二进制mnist实例详解
May 31 Python
利用Django内置的认证视图实现用户密码重置功能详解
Nov 24 Python
Python3.6安装及引入Requests库的实现方法
Jan 24 Python
pandas DataFrame 根据多列的值做判断,生成新的列值实例
May 18 Python
Python设计模式之代理模式实例详解
Jan 19 Python
详解pyppeteer(python版puppeteer)基本使用
Jun 12 Python
使用pyinstaller打包PyQt4程序遇到的问题及解决方法
Jun 24 Python
python 使用多线程创建一个Buffer缓存器的实现思路
Jul 02 Python
Python使用xlrd实现读取合并单元格
Jul 09 Python
Python OpenCV之常用滤波器使用详解
Apr 07 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
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
phpstorm编辑器乱码问题解决
2014/12/01 PHP
PHP记录页面停留时间的方法
2016/03/30 PHP
thinkPHP模板中for循环与switch语句用法示例
2016/11/30 PHP
Javascript异步表单提交,图片上传,兼容异步模拟ajax技术
2010/05/10 Javascript
避免回车键导致的页面无意义刷新的解决方法
2011/04/12 Javascript
Javascript算符的优先级介绍
2013/03/20 Javascript
javascript基于DOM实现省市级联下拉框的方法
2015/05/14 Javascript
jQuery实现鼠标选文字发新浪微博的方法
2016/04/02 Javascript
ashx文件获取$.ajax()方法发送的数据
2016/05/26 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
element-ui表格列金额显示两位小数的方法
2018/08/24 Javascript
Vue2.x通用条件搜索组件的封装及应用详解
2019/05/28 Javascript
Vue中实现权限控制的方法示例
2019/06/07 Javascript
vue-cli设置css不生效的解决方法
2020/02/07 Javascript
非常漂亮的js烟花效果
2020/03/10 Javascript
简单上手Python中装饰器的使用
2015/07/12 Python
Django中URLconf和include()的协同工作方法
2015/07/20 Python
python 实现tar文件压缩解压的实例详解
2017/08/20 Python
Python编写Windows Service服务程序
2018/01/04 Python
django admin 后台实现三级联动的示例代码
2018/06/22 Python
基于python中theano库的线性回归
2018/08/31 Python
python单例模式获取IP代理的方法详解
2018/09/13 Python
Python实现字典排序、按照list中字典的某个key排序的方法示例
2018/12/18 Python
Python设计模式之简单工厂模式实例详解
2019/01/22 Python
Python获取时间范围内日期列表和周列表的函数
2019/08/05 Python
HTML5教程之html 5 本地数据库(Web Sql Database)
2014/04/03 HTML / CSS
亚洲在线旅行门户网站:Expedia.com.hk(智游网)
2020/04/14 全球购物
JSF面试题:如何管量web层中的Bean,用什么标签。如何通过jsp页面与Bean绑定在一起进行处理?
2012/10/05 面试题
高中升旗仪式演讲稿
2014/09/09 职场文书
教师纪律作风整顿心得体会
2016/01/23 职场文书
小学美术教学反思
2016/02/17 职场文书
深度好文:50条没人告诉你的人生经验,句句精辟
2019/08/22 职场文书
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python
SQL Server远程连接的设置步骤(图文)
2022/03/23 SQL Server
angular异步验证器防抖实例详解
2022/03/31 Javascript