1、如何在Django代码中使用缓存设置缓存时,可以在代码中以三种方式使用它。1在视图视图中使用2它用于路由urlconf三。在模板中使用在视图视图中使用缓存
2、在路由urlconf中使用缓存所以你不必修改负责逻辑的视图。
3、在模板中使用缓存
4、对于大多数代码使用者,我们只需要知道如何在Django中使用缓存,而不需要知道Django在后台是如何工作的,比如Django如淡馋衔锂何将数据存储到选定的媒体,以及Django如何判断缓存是否已过期。相关推荐:Python视频教程Django中使用cache的高级技巧让我介绍一些在Django中使用缓存的高级技术。使用缓存控制通常,用户将面临两种类型的缓存:他或她自己的浏览器缓存(私有缓存)和他或她的提供者缓存(公共缓存)。公共缓存由多个用户使用并由其他用户控制。这会给您不希望遇到的敏感数据带来问题,例如您的银行帐户存储在公共缓存中。因此,web应用程序需要以某种方式告诉缓存哪些数据是私有的,哪些是公共的。解决方案是指明页面缓存应该是私有的。要在Django中执行此操作,请使用cache_ucontrol view decorator:
5、decorator负责在后台发送相应的HTTP报头。还有其他方法可以控制缓存参数。例如,HTTP允许刂茗岚羟应用程序执行以下操作:定义可以缓存页的最长时间。指定缓存是否始终检查较新版本,并仅在没有更新时传递缓存的内容。在Django中,可以使用cache,控件视图装饰器指定这些缓存参数。在下面的示例中,cache_ucontrol告诉缓存为每次访问重新验证缓存,并将缓存的版本保存最多3600秒。
6、在cache-In-control()中,任何有效的缓存控制HTTP指令都是有效的。以下是完整列表:
7、在页眉上使用vary默认情况下,Django的缓存系统使用请求的路径(如blog/article/1傧韭茆鳟)来创建其缓存密钥。这意味着不同的用户将获得相同路径的相同缓存版本,而不管客户端的用户代理、cookie和语言配置如何,除非使用vary头通知缓存机制需要考虑请求头中的cookie和语言。要在Django中执行此操作,请使用方便的vary-On-huheaders装饰器视图。例如,下面的代码告诉Django在读取缓存数据时考虑用户代理和cookie之间的差异。
8、使用从不缓存禁用缓存如果要完全禁用头部的缓存,可以使用它django装饰家. cache.never\缓存装饰器。如果不在视图中使用缓存,服务器将不会缓存它。但是,用户的客户端(如浏览器)仍将缓存一些数据。在这种情况下,可以使用never-Cache禁用客户端的缓存。
9、相关建议:Django中的缓存是什么