Django基础中,上下文处理器是如何应用的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计462个文字,预计阅读时间需要2分钟。
在views.py中编写逻辑时,若需要返回数据,但有些数据每个页面都需使用,每次都返回相同数据会显得冗余。这时,可以使用上下文处理器来统一返回这些数据。
当我们在views.py中写逻辑时,需要返回数据,但有时有些数据是每个页面都需要用的,如果每个方法中返回同样数据就会很冗余。这是就需要“上下文处理器“来统一返回数据。
在上下文处理器中返回的每个变量,在每个页面都可以使用。
如,博客中的导航、博客标题等信息,在每个页面可能都会用到,我们就可以写在上下文处理器中,代码如下:
首先在工程目录下建一个py文件,如context_process.py(与settings.py同级):
from user import models #这个是数据库操作的模块,这里可以暂时忽略,想要了解可以去看数据库操作的博客 def nav_title_process(request): # 上下文处理器 :这个函数里返回的每个变量,在每个页面都可以使用 #需要在setting中的TEMPLATES中配置这个方法的路径 # navs = [‘我的相册‘, ‘我的日记‘, ‘python‘, ‘linux‘, ‘接口测试‘] navs=models.Nav.objects.filter(is_delete=1) #这里是从数据库读出来的数据。query_Set 的对象,类似list title = ‘HM的个人主页‘ content={‘daohang‘:navs,‘title‘:title} return content
nav_title_process这个方法就是“上下文处理器”,返回的content的数据可以被任何一个html文件来使用。
本文共计462个文字,预计阅读时间需要2分钟。
在views.py中编写逻辑时,若需要返回数据,但有些数据每个页面都需使用,每次都返回相同数据会显得冗余。这时,可以使用上下文处理器来统一返回这些数据。
当我们在views.py中写逻辑时,需要返回数据,但有时有些数据是每个页面都需要用的,如果每个方法中返回同样数据就会很冗余。这是就需要“上下文处理器“来统一返回数据。
在上下文处理器中返回的每个变量,在每个页面都可以使用。
如,博客中的导航、博客标题等信息,在每个页面可能都会用到,我们就可以写在上下文处理器中,代码如下:
首先在工程目录下建一个py文件,如context_process.py(与settings.py同级):
from user import models #这个是数据库操作的模块,这里可以暂时忽略,想要了解可以去看数据库操作的博客 def nav_title_process(request): # 上下文处理器 :这个函数里返回的每个变量,在每个页面都可以使用 #需要在setting中的TEMPLATES中配置这个方法的路径 # navs = [‘我的相册‘, ‘我的日记‘, ‘python‘, ‘linux‘, ‘接口测试‘] navs=models.Nav.objects.filter(is_delete=1) #这里是从数据库读出来的数据。query_Set 的对象,类似list title = ‘HM的个人主页‘ content={‘daohang‘:navs,‘title‘:title} return content
nav_title_process这个方法就是“上下文处理器”,返回的content的数据可以被任何一个html文件来使用。

