Condizioni nei template
Fa parte della sezione Fondamenti di Django del percorso Django di Coddy. Lezione 14 di 23.
Il distributore di cioccolata calda è guasto. Ora ogni bevanda ha un valore "sold_out", True o False, e la lista dovrebbe indicare le bevande che non puoi ordinare.
Il tag {% if %} mostra la sua parte solo quando la condizione è vera. Una lista di tavoli:
{% for table in tables %}
<li>
Table {{ table.number }}:
{% if table.free %}Free{% else %}Taken{% endif %}
</li>
{% endfor %}Come if in Python, può avere {% elif %} e {% else %}, confronta con ==, <, and, or e not, e termina con {% endif %}. All'interno di un ciclo, leggi i valori dell'elemento usando il nome del ciclo: table.free. Un free da solo non è nel contesto, viene considerato falso e la sua parte non viene mai mostrata.
Sfida
FacileIn drinks.html, all'interno di ogni <li class="drink"> e dopo il nome, aggiungi <span class="sold-out">Sold out</span> solo quando la bevanda è esaurita.
Premi Esegui: su /drinks/, solo Hot Chocolate mostra Sold out.
Provalo tu
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Our Drinks</title>
</head>
<body>
<h1>Our Drinks</h1>
<ul>
{% for drink in drinks %}
<li class="drink">{{ drink.name }}</li>
{% empty %}
<li>No drinks today.</li>
{% endfor %}
</ul>
</body>
</html>
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti di Django
4Layout e file statici
Ereditarietà dei templateUn titolo per ogni pagina3Template
Il tuo primo templateVariabili nei templateEsercitati da solo: Playground Django