1. Halaman Login
Edit urls.py.
from django.contrib.auth.views import LoginView
urlpatterns = [
…
…
path('siswa/login/', LoginView.as_view(), name='login'),
]
Buat folder registration di apps01. Buat file login.html di dalamnya.
{% extends "base.html" %}
{% block content %}
<div class="container">
<div class="row">
<div class="col-md-4"></div>
<div class="col-md-4">
<div class="card">
<div class="card-header">
<b>Login</b>
</div>
<div class="card-body">
<form method="POST">
{% csrf_token %}
{{ form.as_p }}
<button class="btn btn-primary">Login</button>
</form>
</div>
</div>
</div>
<div class="col-md-4"></div>
</div>
</div>
{% endblock content %}
Atur halaman redirect setelah login.
...
LOGIN_REDIRECT_URL = 'siswa'
2. Force Login
Atur login url.
...
LOGIN_URL = 'login'
Atur view mana yang harus dipaksa login terlebih dahulu sebelum diakses.
from django.contrib.auth.decorators import login_required
from django.conf import settings
@login_required(login_url=settings.LOGIN_URL)
def siswa(request):
...
...
3. Halaman Logout
Edit urls.py.
from django.contrib.auth.views import LoginView, LogoutView
urlpatterns = [
...
...
path('siswa/logout/', LogoutView.as_view(next_page='login'), name='logout'),
]
Lanjutkan Membaca Materi Lengkap