Django

Django Authentication

Login, logout, and protecting views

Authentication

Django's auth handles users, sessions, and login forms.

# config/urls.py
from django.contrib.auth import views as auth_views

urlpatterns += [
    path("accounts/login/", auth_views.LoginView.as_view(template_name="registration/login.html"), name="login"),
    path("accounts/logout/", auth_views.LogoutView.as_view(), name="logout"),
]
# settings.py
LOGIN_URL = "login"
LOGIN_REDIRECT_URL = "tasks:task-list"
from django.contrib.auth.decorators import login_required

@login_required
def task_list(request):
    ...