로그인
📌 로그인
① index.html에 로그인 버튼 생성.
(index.html)
<h1>INDEX PAGE</h1>
<a href="{% url 'login' %}"><button>LOGIN</button></a>
② 로그인 페이지 생성.
(login.html)
<h1>LOGIN PAGE</h1>
<form method="post">
{% csrf_token %}
<input name="uname" type="text" placeholder="USERNAME"><br><br>
<input name="upass" type="password" placeholder="PASSWORD"><br><br>
<button>LOGIN</button>
<a href="{% url 'index' %}"><button type="button">HOME</button></a>
</form>
③ (acc/urls.py)
from django.urls import path
from . import views
urlpatterns = [
path('index/', views.index, name="index") ,
path('login/', views.userlogin, name="login")
]
④ 로그인 구현.
(acc/views.py)
from django.shortcuts import render, redirect
from django.contrib.auth import authenticate, login
# Create your views here.
def index(request):
return render(request, "acc/index.html")
def userlogin(request):
if request.method == "POST":
un = request.POST.get("uname")
up = request.POST.get("upass")
user = authenticate(username=un, password=up)
if user:
login(request, user)
return redirect("index")
else:
pass
return render(request, "acc/login.html")
💡 login함수를 사용해야 하므로, 이름을 다르게 설정해야 함.
로그아웃
📌 로그아웃
① 로그인된 경우, 로그아웃 버튼 보이도록 index.html에 생성.
(index.html)
<h1>INDEX PAGE</h1>
{% if user.is_authenticated %}
<a href="{% url 'logout' %}"><button>LOGOUT</button></a>
{% else %}
<a href="{% url 'login' %}"><button>LOGIN</button></a>
{% endif %}
② (acc/urls.py)
from django.urls import path
from . import views
urlpatterns = [
path('index/', views.index, name="index") ,
path('login/', views.userlogin, name="login"),
path('logout/', views.userlogout, name="logout"),
]
③ 로그아웃 구현.
(acc/views.py)
from django.shortcuts import render, redirect
from django.contrib.auth import authenticate, login, logout
# Create your views here.
...
def userlogout(request):
logout(request)
return redirect("index")
'Django' 카테고리의 다른 글
[Django] user CRUD(5) - 회원 삭제(D) (0) | 2022.12.21 |
---|---|
[Django] user CRUD(4) - 회원 정보 보기(R) (0) | 2022.12.21 |
[Django] User CRUD (0) | 2022.12.20 |
[Django] 로그인과 로그아웃 (0) | 2022.12.20 |
[Django] user CRUD(2) - User 생성 (0) | 2022.12.20 |
댓글