Templates
Penjelasan
Django Template Language (DTL) memakai {{ variabel }} untuk output dan {% tag %} untuk logic seperti if/for. Template bisa saling mewarisi lewat {% extends %} dan {% block %}, sehingga layout dasar (navbar, footer) tidak perlu ditulis ulang di tiap halaman.
Contoh Konsep
# views.py
from django.shortcuts import render
def index(request):
daftar = ['Belajar Django', 'Bikin API']
return render(request, 'catatan/index.html', {'daftar': daftar})
<!-- catatan/index.html -->
<h1>Daftar Catatan</h1>
<ul>
{% for item in daftar %}
<li>{{ item }}</li>
{% endfor %}
</ul>
Praktikum
Buat template yang menampilkan {{ judul }} sebagai <h1> dan melakukan {% if catatan_kosong %} untuk menampilkan pesan 'Belum ada catatan' kalau daftar kosong.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
DTL sengaja dibatasi (tidak bisa eksekusi Python bebas di template) supaya logic bisnis tetap di view/model, bukan bocor ke HTML. Kalau butuh logic kompleks, hitung di view lalu kirim hasilnya lewat context, jangan dipaksakan di template.