Python的Django框架中模板碎片缓存简介


Posted in Python onJuly 24, 2015

你同样可以使用cache标签来缓存模板片段。 在模板的顶端附近加入{% load cache %}以通知模板存取缓存标签。

模板标签{% cache %}在给定的时间内缓存了块的内容。 它至少需要两个参数: 缓存超时时间(以秒计)和指定缓存片段的名称。 示例:

{% load cache %}
{% cache 500 sidebar %}
  .. sidebar ..
{% endcache %}

有时你可能想缓存基于片段的动态内容的多份拷贝。 比如,你想为上一个例子的每个用户分别缓存侧边栏。 这样只需要给{% cache %}传递额外的参数以标识缓存片段。

{% load cache %}
{% cache 500 sidebar request.user.username %}
  .. sidebar for logged in user ..
{% endcache %}

传递不止一个参数也是可行的。 简单地把参数传给{% cache %}。

缓存超时时间可以作为模板变量,只要它可以解析为整数值。 例如,如果模板变量my_timeout值为600,那么以下两个例子是等价的。

{% cache 600 sidebar %} ... {% endcache %}
{% cache my_timeout sidebar %} ... {% endcache %}

这个特性在避免模板重复方面非常有用。 可以把超时时间保存在变量里,然后在别的地方复用。

Python 相关文章推荐
Python生成随机密码
Mar 10 Python
python使用reportlab实现图片转换成pdf的方法
May 22 Python
python使用urllib2提交http post请求的方法
May 26 Python
Python的Flask框架标配模板引擎Jinja2的使用教程
Jul 12 Python
Django 开发环境与生产环境的区分详解
Jul 26 Python
Python面向对象之私有属性和私有方法应用案例分析
Dec 31 Python
Windows系统下pycharm中的pip换源
Feb 23 Python
解决python3插入mysql时内容带有引号的问题
Mar 02 Python
使用OpenCV获取图像某点的颜色值,并设置某点的颜色
Jun 02 Python
python3.6.5基于kerberos认证的hive和hdfs连接调用方式
Jun 06 Python
用Python爬取LOL所有的英雄信息以及英雄皮肤的示例代码
Jul 13 Python
详解PyQt5中textBrowser显示print语句输出的简单方法
Aug 07 Python
Django框架下在URLconf中指定视图缓存的方法
Jul 23 #Python
详解Django框架中的视图级缓存
Jul 23 #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
You might like
php编写一个简单的路由类
2011/04/13 PHP
基于php使用memcache存储session的详解
2013/06/25 PHP
Apache启动报错No space left on device: AH00023该怎么解决
2015/10/16 PHP
php使用json-schema模块实现json校验示例
2019/09/28 PHP
javascript静态的url如何传递
2007/05/03 Javascript
innertext , insertadjacentelement , insertadjacenthtml , insertadjacenttext 等区别
2007/06/29 Javascript
javascript add event remove event
2008/04/07 Javascript
extjs 学习笔记 四 带分页的grid
2009/10/20 Javascript
JavaScript 存在陷阱 删除某一区域所有节点
2010/05/10 Javascript
25个非常棒的jQuery滑块插件和教程小结
2011/09/02 Javascript
node中socket.io的事件使用详解
2014/12/15 Javascript
jQuery实现自动输入email、时间和域名的方法
2016/08/24 Javascript
BootStrap tooltip提示框使用小结
2016/10/26 Javascript
如何理解Vue的.sync修饰符的使用
2017/08/17 Javascript
Vue自定义指令使用方法详解
2017/08/21 Javascript
javascript实现获取一个日期段内每天不同的价格(计算入住总价格)
2018/02/05 Javascript
layui 优化button按钮和弹出框的方法
2018/08/15 Javascript
vue 项目中使用Loading组件的示例代码
2018/08/31 Javascript
JS中的防抖与节流及作用详解
2019/04/01 Javascript
微信小程序实现电子签名并导出图片
2020/05/27 Javascript
vue动态设置页面title的方法实例
2020/08/23 Javascript
python3实现基于用户的协同过滤
2018/05/31 Python
python批量下载抖音视频
2019/06/17 Python
Pyspark获取并处理RDD数据代码实例
2020/03/27 Python
python os模块常用的29种方法使用详解
2020/06/02 Python
解决python3.x安装numpy成功但import出错的问题
2020/11/17 Python
网购亚洲时装、美容产品和生活百货:YesStyle
2016/09/15 全球购物
英国领先的独立时装店:Van Mildert
2019/10/28 全球购物
师范生实习自我鉴定
2013/11/01 职场文书
店长岗位的工作内容
2013/11/12 职场文书
高中物理教学反思
2014/02/08 职场文书
党的群众路线教育实践活动个人自我剖析材料
2014/10/07 职场文书
2015年艾滋病防治工作总结
2015/05/22 职场文书
教你用eclipse连接mysql数据库
2021/04/22 MySQL
Python socket如何解析HTTP请求内容
2022/02/12 Python
零基础学java之循环语句的使用
2022/04/10 Java/Android