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

作者:goldensun 时间:2022-11-20 11:00:28 

你同样可以使用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 %}

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

标签:Django,缓存
0
投稿

猜你喜欢

  • Python实现发送与接收邮件的方法详解

    2023-04-05 04:48:43
  • mysql数据库删除重复数据只保留一条方法实例

    2024-01-28 06:17:49
  • go获取协程(goroutine)号的实例

    2024-05-29 22:07:21
  • SQL Server忘记sa账号密码重新添加新管理账号

    2024-01-18 09:59:44
  • python中关于时间和日期函数的常用计算总结(time和datatime)

    2022-01-02 05:50:08
  • 解决pyshp UnicodeDecodeError的问题

    2021-08-01 10:17:39
  • 如何在社区建立一个寻呼台?

    2009-11-08 18:59:00
  • 特殊字符的json序列化总结大全

    2023-12-04 00:36:58
  • jupyter notebook内核配置的图文教程

    2023-11-22 03:56:56
  • 封装一个python的pymysql操作类

    2024-01-19 09:44:47
  • [翻译]标记语言和样式手册 Chapter 2 标题

    2008-01-16 11:56:00
  • Python中如何自定义函数

    2021-12-12 20:20:58
  • Python 面向对象之封装、继承、多态操作实例分析

    2021-04-09 10:03:54
  • Anaconda超详细保姆级安装配置教程

    2022-09-06 08:11:50
  • sql存储过程获取汉字拼音头字母函数

    2011-11-03 16:58:05
  • 解决Python pandas plot输出图形中显示中文乱码问题

    2023-03-14 21:39:59
  • 使用Python-pptx 告别繁琐的幻灯片制作

    2021-12-10 12:03:23
  • 2019 Python最新面试题及答案16道题

    2022-07-01 03:04:49
  • Git Bash终端默认路径的设置查看修改及拓展图文详解

    2023-08-22 02:03:40
  • python 制作python包,封装成可用模块教程

    2022-06-02 06:32:25
  • asp之家 网络编程 m.aspxhome.com