Django:如何为所有视图(而不是模板)提供上下文?

2023-11-30

我想为我所有基于函数的视图(FBV)提供一些上下文,类似于TEMPLATE_CONTEXT_PROCESSORS(CP) 为所有模板提供上下文。后者对我不起作用,因为我在渲染模板之前需要该上下文。

特别是,在我的网站上,我有一个函数,它接受请求并返回模型Category焦点项目的数量。我的 CP 为所有模板提供了此功能,但我发现自己从 FBV 中进行了相同的调用,并且希望删除此冗余。

这个问题类似,但它预设了从视图访问 CP 输出的方法。这看起来很老套,我不确定这是最好的方法。

Django 的方法是什么?


Use 中间件...

class MyModelMiddleware(object):
    def process_request(self, request):

        request.extra_model = self.get_model(request.user)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django:如何为所有视图(而不是模板)提供上下文? 的相关文章

随机推荐