페이지 내 사용자가 로그인되어있는지 확인하여 어떤 페이지를 보여줄지 연결하는 것이 매끄러운 웹의 흐름일 것이다.
사용자의 로그인 여부를 확인하는 코드를 살펴보자.
1. is_authenticated : 로그인의 여부만 검증해 주는 기능
def home(request):
# 사용자가 인증을 받았는지 (로그인이 되어있는지) 확인
user = request.user.is_authenticated
if user:
return redirect('/tweet')
else:
return redirect('/sign-in')
2. @login_required : 로그인하지 않으면 접근이 불가능 하게 만드는 기능
#user/views.py
# login_required를 임포트
from django.contrib.auth.decorators import login_required
# @login_required 은 사용자가 로그인 상태인지 확인
@login_required # 사용자가 로그인된 상태에서만
def logout(request):
auth.logout(request) # 인증 되어있는 정보를 없애기
return redirect("/")
3. logout : 위 코드 중 auth.logout을 사용하여 인증정보를 삭제하여 로그아웃한다.
'Python > Django' 카테고리의 다른 글
| Django 작성된 글 읽기/삭제 기능 구현 (0) | 2022.05.31 |
|---|---|
| Django 글쓰기 기능 구현 (0) | 2022.05.31 |
| Django의 사용자 모델을 적용수정하자. (0) | 2022.05.31 |
| Django의 기본 제공 모델을 수정해보자! (0) | 2022.05.31 |
| Django 로그인 기능(Session) (0) | 2022.05.31 |