我的自定义中间件返回呈现的响应(带有RequestContext
)。
似乎这会导致csrf_token
上下文变量设置为NOTPROVIDED
(Djangos sentinel value for not provided),并且{% csrf_token %}
没有输出,因为调用了 CSRF 中间件process_view
,我假设在这种情况下我们永远不会运行。
中间件渲染的响应并不复杂,而且它是一个很少使用的特殊情况,但是更改语言需要 CSRF 令牌,因为这是对 Django 内置set_language
视图的 POST 请求。
解决这个问题的最佳方法是什么?