码迷,mamicode.com
首页 > 其他好文 > 详细

django_上下文管理器

时间:2019-12-30 11:09:58      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:配置   djang   图片   mic   解决   set   ext   context   显示   

在views中的重复代码可以在上下文管理器中实现

实现的逻辑是 首先请求过来先走url指定的函数也就是views中的函数,然后在去走我们指定的上下文管理器中的逻辑 ,最后渲染到页面中 如下:

我们在工程的user目录下新建一个.py文件(process_content.py)然后将实现的逻辑写在这个文件下 ,实现完逻辑需要在settings-templates-options中导入一下

技术图片技术图片技术图片

 

总结:

使用场景:模板继承可以减少页面内容的重复定义,实现页面内容的重用。个人博客右侧的导航栏都是继承base页面从而让代码得到最大程度的复用。但是当父模板中有动态数据的话,这些动态数据在子模版中是不会显示的。我们可以通过自定义上下文处理器来解决。

结构:上下文管理器文件名一般为context_processors.py,def  xx(request) 为一个自定义函数,必要参数request,将里面的内容以字典的形式返回给所有模板,模板通过 {{ key }}取值。

配置:它需要被配置在 settings里 

提示:在django的上下管理器中,尽量不要写太重量级的代码,因为上下文渲染器的中代码,每一次请求都会执行一次,如果这个渲染器过重,会非常影响性能

django_上下文管理器

标签:配置   djang   图片   mic   解决   set   ext   context   显示   

原文地址:https://www.cnblogs.com/mhmh007/p/12118603.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!