6.6.django的登录认证

django的权限认证

若登录采用的是函数,那么可以使用@LoginRequired注解实现

@LoginRequired

若登录功能采用的是类,则使用类继承方式

utils/mixin_utils.py

from django.contrib.auth.decorators import login_required
from django.utils.decorators import method_decorator


class LoginRequireMixin(object):

    @method_decorator(login_required(login_url='/login/'))
    def dispatch(self, request, *args, **kwargs):
        return super(LoginRequireMixin, self).dispatch(request, *args, **kwargs)

course/views.py

from django.contrib.auth.mixins import LoginRequiredMixin
from django.views import View
...

class CommentsView(LoginRequiredMixin, View):
    def get(self, request, course_id):
        ...

Last updated

Was this helpful?