美文网首页
django22 views class-base decora

django22 views class-base decora

作者: 孤泉冷月 | 来源:发表于2019-04-23 19:00 被阅读0次

2019年4月26日
问题:

基于类的视图使用装饰器@login_required时报错

报错代码:

class views:
  @login_required
    def sign_out_view(self, request):
        context = None
        return render(request, self.__sign_out_templates, context=context)
        pass

报错信息:

AttributeError: 'view' object has no attribute 'user'

参考资料:

官方文档(基于类的视图)https://docs.djangoproject.com/zh-hans/2.2/topics/class-based-views/intro/
Decorating class-based views

解决办法:

使用from django.utils.decorators import method_decorator 方法修饰器
改正后代码:

from django.contrib.auth.decorators import login_required
from django.utils.decorators import method_decorator
class views:
  @method_decorator(login_required)
    def sign_out_view(self, request):
        context = None
        return render(request, self.__sign_out_templates, context=context)
        pass

解决

相关文章

网友评论

      本文标题:django22 views class-base decora

      本文链接:https://www.haomeiwen.com/subject/elubgqtx.html