有没有一种方法可以访问自定义上下文处理器中通过 View 传递的当前上下文,因此可以添加缺失的变量(而不是覆盖现有变量)?
我要实现的目标:
我构建了像/city_slug/这样的URL,我想检查上下文中是否已经存在city变量,否则我想将city添加到我的上下文中(可能正在使用存储在 session 变量中的最后使用的城市,否则默认为某个城市,并且可能甚至可以将 session 变量设置为下次使用。)
我认为这是一个非常普遍的问题,你们如何解决?
最佳答案
您不能从上下文处理器中访问当前上下文,而且我猜中间件也不适合您。创建在 View 中使用的自己的模板渲染功能也许很有意义,并且始终将其传递上下文和当前请求,然后将所需的功能放入其中,然后使用常规渲染功能django最终渲染模板为您提供!
关于Django上下文处理器: Is it possible to access current context in ContextProcessor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3850735/