[파이썬][Django] Django 로그아웃 함수 사용 방법과 예제

Django에서 로그아웃 기능을 구현하는 방법과 예제를 제공하겠습니다. Django의 내장 로그아웃 뷰를 사용하여 로그아웃을 구현할 것입니다.

  1. urls.py에 로그아웃 URL 매핑

    urls.py 파일에서 로그아웃 URL을 매핑합니다.

# myapp/urls.py
    
    from django.urls import path
    from django.contrib.auth import views as auth_views
    
    urlpatterns = [
        # ... 다른 URL 패턴 ...
        path('logout/', auth_views.LogoutView.as_view(), name='logout'),
    ]
  1. 로그아웃 링크 추가 (선택 사항)

    로그아웃을 사용하기 위해 로그인한 사용자에게 로그아웃 링크를 제공합니다. 예를 들어, 기존 로그인 템플릿에 로그아웃 링크를 추가할 수 있습니다.

<pre>
<code>

<!-- registration/login.html -->
    
    {% if user.is_authenticated %}
      <p>Welcome, {{ user.username }}. <a href="{% url 'logout' %}">Logout</a></p>
    {% else %}
      <!-- 기존 로그인 양식 -->
    {% endif %}

</code>
</pre>
  1. 이제 /logout/으로 접속하면 사용자가 로그아웃됩니다. 로그아웃 시에는 자동으로 로그아웃 뷰가 호출되어 세션에서 사용자 데이터가 삭제됩니다.

Django의 내장 로그아웃 뷰를 사용하면 로그아웃 처리를 간단하게 구현할 수 있으며, 보안 및 세션 관리에 대한 걱정을 덜 수 있습니다.