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 13 Python
Python使用cx_Oracle调用Oracle存储过程的方法示例
Oct 07 Python
解决python中遇到字典里key值为None的情况,取不出来的问题
Oct 17 Python
利用python循环创建多个文件的方法
Oct 25 Python
Python面向对象程序设计OOP深入分析【构造函数,组合类,工具类等】
Jan 05 Python
python selenium登录豆瓣网过程解析
Aug 10 Python
如何基于python把文字图片写入word文档
Jul 31 Python
python打包多类型文件的操作方法
Sep 21 Python
python实现模拟器爬取抖音评论数据的示例代码
Jan 06 Python
python中Array和DataFrame相互转换的实例讲解
Feb 03 Python
聊聊python在linux下与windows下导入模块的区别说明
Mar 03 Python
Python连接Postgres/Mysql/Mongo数据库基本操作大全
Jun 29 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
全国FM电台频率大全 - 15 山东省
2020/03/11 无线电
PHP按行读取、处理较大CSV文件的代码实例
2014/04/09 PHP
PHP数字和字符串ID互转函数(类似优酷ID)
2014/06/30 PHP
php 升级到 5.3+ 后出现的一些错误,如 ereg(); ereg_replace(); 函数报错
2015/12/07 PHP
JS获取scrollHeight问题想到的标准问题
2007/05/27 Javascript
js 日期转换成中文格式的函数
2009/07/07 Javascript
jQuery验证Checkbox是否选中的代码 推荐
2011/09/04 Javascript
文本框根据输入内容自适应高度的代码
2011/10/24 Javascript
获取客户端网卡MAC地址和IP地址实现JS代码
2013/03/17 Javascript
使用jquery实现以post打开新窗口
2014/03/19 Javascript
javascript作用域问题实例分析
2015/07/13 Javascript
javascript单例模式的简单实现方法
2015/07/25 Javascript
浅析使用BootStrap TreeView插件实现灵活配置快递模板
2016/11/28 Javascript
JavaScript实现替换字符串中最后一个字符的方法
2017/03/07 Javascript
微信小程序如何获取手机验证码
2018/11/04 Javascript
vue+Element-ui实现分页效果实例代码详解
2018/12/10 Javascript
命令行批量截图Node脚本示例代码
2019/01/25 Javascript
小程序实现左滑删除的效果的实例代码
2020/10/19 Javascript
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
通过Python来使用七牛云存储的方法详解
2015/08/07 Python
Python六大开源框架对比
2015/10/19 Python
轻松掌握python设计模式之访问者模式
2016/11/18 Python
详解python里使用正则表达式的分组命名方式
2017/10/24 Python
python中字典按键或键值排序的实现代码
2019/08/27 Python
浅谈Python type的使用
2019/11/19 Python
PyCharm 2020.2 安装详细教程
2020/09/25 Python
Django多数据库联用实现方法解析
2020/11/12 Python
CSS3 网页下拉菜单代码解释 中文翻译
2010/02/27 HTML / CSS
金融专业个人求职信范文
2013/11/28 职场文书
志愿者活动总结报告
2014/06/27 职场文书
无犯罪记录证明范本
2014/09/15 职场文书
立春观后感
2015/06/18 职场文书
订货会主持词
2015/07/01 职场文书
严以律己专题学习研讨会发言材料
2015/11/09 职场文书
mysql5.7使用binlog 恢复数据的方法
2021/06/03 MySQL
python脚本框架webpy的url映射详解
2021/11/20 Python