如何结合 Django 的 'LoginRequiredMixin' 和表单工具的 'FormPreview'?



>LoginRequiredMixin在其他基于类的视图上效果很好。此外,表单工具FormPreview工作正常。但是当我尝试同时使用两者时,LoginRequiredMixin就会被忽略。

如果我使用表单工具和 Django 文档中最基本的示例,情况也是如此。

我觉得奇怪的两件事(但这不一定是原因(:

  • "这个混音应该在继承列表的最左边的位置。"这听起来像是如果有人做一些不规则的事情,就会破坏一些内部黑客。没有解释为什么。
  • 表单工具视图应该调用自身,而不是方法.as_view(),这又是非标准的。

这是一个错误吗?我能做什么?

FormPreview

不是基于类的通用视图,因此您不能像LoginRequiredMixin那样将其与mixins一起使用。

在 URL 模式中包含表单预览实例时,可以使用login_required修饰器:

from django.contrib.auth.decorators import login_required
url_patterns = [
url(r'^form-handler/$', login_required(MyFormPreview(SomeModelForm))),
]

最新更新