0

我在弹出的每个页面上都有一个登录表单,它需要 csrf 令牌。我还有一些表单视图,它们的表单不需要 csrf 令牌。

我发现即使我在登录表单上有 {% csrf_token %} ,如果视图没有用 csrf_protect() 包装,它不会生成令牌,所以当登录表单被提交时,它得到一个 csrf 缺失错误。OTOH,如果我确实包装了它,那么页面上不需要它的另一个表单会抱怨它丢失,尽管登录表单有效。一个表单提交到当前页面表单视图,而表单提交到单独的表单视图。

即使没有使用 csrf_protect 也可以生成 csrf_token 吗?

我看到了 csrf_exempt 函数,但在包装视图时它也无济于事。是否可以渲染两个视图函数或将其包装在模板中?我只是使用 {% include login.html %}

谢谢

4

0 回答 0