我想为所有基于函数的视图(FBV)提供一些上下文,类似于TEMPLATE_CONTEXT_PROCESSORS(CP)为所有模板提供上下文的方式.后者对我不起作用,因为在渲染模板之前我需要上下文.
特别是,在我的网站上,我有一个函数接受请求并返回Category焦点项目的模型.我的CP为所有模板提供此功能,但我发现自己从我的FBV发出同样的呼叫,并希望删除此冗余.
这个问题类似,但它预先假定从视图中访问CP的输出的方法.这看起来很糟糕,我不确定这是最好的方法.
Django的做法是什么?
使用中间件 ......
class MyModelMiddleware(object):
def process_request(self, request):
request.extra_model = self.get_model(request.user)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1089 次 |
| 最近记录: |