Authentication
Penjelasan
django.contrib.auth adalah sistem autentikasi bawaan Django — menyediakan model User, fungsi authenticate()/login()/logout(), dan decorator @login_required untuk melindungi view yang butuh login. Semua ini sudah terhubung ke session framework bawaan tanpa setup tambahan.
Contoh Konsep
from django.contrib.auth import authenticate, login, logout
from django.contrib.auth.decorators import login_required
def login_view(request):
user = authenticate(request, username=request.POST['username'], password=request.POST['password'])
if user is not None:
login(request, user)
@login_required
def dashboard(request):
return render(request, 'dashboard.html')
Praktikum
Lindungi view profil dengan decorator @login_required, sehingga user yang belum login diarahkan ke halaman login.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Kalau LOGIN_URL tidak di-set di settings.py, @login_required mengarah ke /accounts/login/ secara default — set LOGIN_URL kalau route login-mu berbeda.