Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 2019회고
- machinelearning
- CrossAngle
- 쇠막대기
- 서버로그
- 한빛미디어
- 타코트론
- 봉사활동
- 나는리뷰어다
- texttospeech
- 개발자를위한파이썬
- Xangle
- 인하멘토링
- graphicdriver
- 개발자회고
- 프로그래머스
- 로그남기기
- 놀이동산의슈퍼컴퓨터를작동시켜라
- 신영준
- 프로그라피
- 노트북덮개
- 인천남중
- 서구동구예비군훈련장
- 인하대학교
- 우분투비트확인
- intell
- tacotron
- jaypark.dating
- 심플소프트웨어
- 결과를얻는법
Archives
- Today
- Total
jc.jang
4강 로그아웃 구현하기 본문
주제
- 로그아웃 구현하기
노트
- django/contrib/auth/views.py의 LogoutView를 사용하여 로그아웃을 구현할 수 있다.
- accounts/urls.py
from django.urls import path
from django.contrib.auth import views as auth_views
from . import views
urlpatterns = [
...
path('logout/', auth_views.LogoutView.as_view(), name='logout'),
...
]
- accounts/layout.html
<body>
<a href="{% url 'root' %}"><h1>jc jang blog</h1></a>
{% if user.is_authenticated %}
<a href="{% url 'profile' %}">{{ user }}</a>
<a href="{% url 'logout' %}?next={{ request.path }}"
onclick="return confirm('정말로 로그아웃 하시겠습니까?');">로그아웃</a>
{% else %}
회원가입
<a href="{% url 'login' %}?next={{ request.path }}">로그인</a>
{% endif %}
<hr>
{% block content %}
{% endblock %}
<hr>
© 2019. jc jang
</body>
- 로그아웃에 logout 링크를 걸어준다.
- next를 인자로 주어서 로그아웃 후 이동할 주소를 설정한다.
- request.path로 현재 url로 돌아오도록 설정할 수 있다.
- next 값이 없다면 global_settings.LOGOUT_REDIRECT_URL에서 설정한 값에 따라 이동한다.
- askdjango/settings.py
from django.urls import reverse_lazy
LOGOUT_REDIRECT_URL = reverse_lazy('login')
- LOGOUT_REDIRECT_URL을 재정의한다.
- reverse가 아닌 reverse_lazy를 사용하는 이유는 urls.py가 메모리에 올라왔지만 views.py가 메모리에 올라와 있지 않으면 reverse호출 시 에러가 발생하기 때문이다.
질문
- 없음
요약
- django/contrib/auth/views.py를 임포트하여 로그아웃을 구현할 수 있다.
날짜
- 오후 5시, 20190828
'Django > Django - 인증편' 카테고리의 다른 글
8강 회원가입 시 next 인자 처리하기 (0) | 2019.09.02 |
---|---|
7강 회원가입과 동시에 로그인하기 (0) | 2019.09.02 |
6강 가입과 동시에 Profile만들기 (1) | 2019.08.29 |
5강 회원가입 (4) | 2019.08.29 |
3강 장고 유저 프로필 꾸미기 (0) | 2019.08.28 |
Comments