gpt4 book ai didi

python - 我如何在 Django 中对类 View 进行身份验证

转载 作者:太空狗 更新时间:2023-10-30 00:33:13 25 4
gpt4 key购买 nike

在 Django 文档中,他们这样说 https://docs.djangoproject.com/en/dev/topics/auth/default/#user-objects

from django.contrib.auth.decorators import login_required

@login_required(login_url='/accounts/login/')
def my_view(request):

但是我如何在基于类的 View 上使用 login_required

@login_required
classMyCreateView(CreateView):

这给出了错误

'function' 对象没有属性 'as_view'

最佳答案

你可以通过多种方式做到这一点,比如

https://docs.djangoproject.com/en/dev/topics/class-based-views/#decorating-class-based-views

  1. 要么是这个
 urlpatterns = patterns('',
(r'^about/', login_required(TemplateView.as_view(template_name="secret.html"))),
(r'^vote/', permission_required('polls.can_vote')(VoteView.as_view())),
)
  1. 或者这个
class ProtectedView(TemplateView):
template_name = 'secret.html'

@method_decorator(login_required)
def dispatch(self, *args, **kwargs):
return super(ProtectedView, self).dispatch(*args, **kwargs)

关于python - 我如何在 Django 中对类 View 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14314456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com