📢 공지사항
home

Login / Logout 구현

수강계획
2022/01/10
번호
22
복습여부
수강여부
수강일
2022/01/10
속성
<로그인 화면 만들기>
from django.contrib.auth.views import LoginView, LogoutView from django.urls import path from accountapp.views import hello_world, AccountCreateView app_name = "accountapp" urlpatterns = [ path('hello_world/',hello_world, name='hello_world'), path('login/', LoginView.as_view(template_name='accountapp/login.html'), name='login'), path('logout/',LogoutView.as_view(), name='logout'), path('create/', AccountCreateView.as_view(), name='create'), ]
Python
복사
urls.py
{% extends 'base.html' %} {% block content %} <div style="text-align: center"> <div> <h4>Login</h4> </div> <div> <form action="" method="post"> {% csrf_token %} {{ form }} <input type="submit" class="btn btn-primary"> </form> </div> </div> {% endblock %}
HTML
복사
login.html
next → login_redirect_url → default
<로그인 창으로 들어가는 거 만들기>
<div class="Jichuuu_header"> <div> <h1 class="Jichuuu_logo">Jichuuu</h1> </div> <div> <span>nav1</span> <span>nav2</span> <span>nav3</span> {% if not user.is_authenticated %} <a href="{% url 'accountapp:login' %}?next={{ request.path }}"> <span>login</span> </a> {% else %} <a href="{% url 'accountapp:logout' %}?next={{ request.path }}"> <span>logout</span> </a> {% endif %} </div> </div>
HTML
복사
header.html
이 상태에서 로그인 화면에서 로그인 하면 /accounts/profile/이라는 default 값으로 감
이걸 방지하기 위해서 login_redirect_url을 설정해 줄 거임
settings.py 맨 밑에 밑에 코드 추가하기
LOGIN_REDIRECT_URL = reverse_lazy('accountapp:hello_world') LOGOUT_REDIRECT_URL = reverse_lazy('accountapp:hello_world')
Python
복사
정리가 안되는데 다시 들어보자 ,,