django 학습-사용자의 로그인 여부를 판단하는 두 가지 방식

2105 단어 django
보기 함수 중 일부 조작은 사용자가 로그인 전제에서 해야만 할 수 있다.
메서드 1: 사용자의 로그인 여부를 Request 메서드로 확인할 수 있습니다.
if request.user.is_authenticated():
    ...
else:
    return render(requeset, 'login.html')

방법2: 시도 함수에서 하나의 기초 클래스를 계승하여 사용자가 로그인했는지 여부를 판단할 수 있다.
utils에 있습니다.py에서 기본 클래스를 정의합니다.
from django.contrib.auth.decorators import login_required
from django.utils.decorators import method_decorator


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

뷰 함수를 작성할 때 클래스를 상속합니다.
from utils import LoginRequiredMixin

class CourseCommentView(LoginRequiredMixin, View):
    """
        
    """
    def get(self, request):
        pass

두 번째 방식은 많은 보기 함수의 계승을 편리하게 하고 첫 번째 방식은 페이지의 일부 내용의 판정에 사용된다.

좋은 웹페이지 즐겨찾기