Şablonlarda Döngüler
Coddy'nin Django Journey'sinin Django Temelleri bölümünün bir parçası. Ders 13 / 23.
Kafenin yeni bir sayfası var: /drinks/. Bu sayfanın görünümü her içeceği şablona drinks olarak aktarır, ancak sayfadaki liste boştur. {% for %} etiketi her öğe için HTML'yi bir kez tekrarlar. Ücretsiz masaları listeleyen bir sayfa:
<ul>
{% for table in free_tables %}
<li>Table {{ table }} is free.</li>
{% empty %}
<li>Every table is taken.</li>
{% endfor %}
</ul>Python'daki for gibi çalışır; table sırayla her öğeye atanır. Şablonlarda girintileme kuralları yoktur, bu nedenle {% endfor %} döngüyü kapatır. İsteğe bağlı {% empty %} bölümü yalnızca listede hiçbir öğe olmadığında gösterilir.
Döngü, drinks gibi yalnızca bağlamdaki adları görür; views.py dosyasındaki değişkenleri görmez.
Görev
Kolaydrinks.html içinde, <ul> içinde drinks üzerinde döngü kur. Her içki, adıyla birlikte bir <li class="drink"> alır. Hiç içki olmadığında bunun yerine <li>No drinks today.</li> göster.
Çalıştır düğmesine bas: /drinks/ dört içki listeler.
Kendin dene
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Our Drinks</title>
</head>
<body>
<h1>Our Drinks</h1>
<ul>
<!-- one <li class="drink"> per drink -->
</ul>
</body>
</html>
Django Temelleri bölümündeki tüm dersler
3Şablonlar
İlk ŞablonunuzŞablon DeğişkenleriKendi başına pratik yap: Django playground