Conditions dans les modèles
Fait partie de la section Les bases de Django du Journey Django de Coddy. Leçon 14 sur 23.
La machine à chocolat chaud est en panne. Chaque boisson a maintenant une valeur "sold_out", True ou False, et la liste doit indiquer les boissons que tu ne peux pas commander.
La balise {% if %} n’affiche sa partie que lorsque sa condition est vraie. Une liste de tables :
{% for table in tables %}
<li>
Table {{ table.number }}:
{% if table.free %}Free{% else %}Taken{% endif %}
</li>
{% endfor %}Comme le if de Python, elle peut comporter {% elif %} et {% else %}, effectuer des comparaisons avec ==, <, and, or et not, et se terminer par {% endif %}. Dans une boucle, lis les valeurs de l’élément à l’aide du nom de la boucle : table.free. Un free seul ne fait pas partie du contexte, est considéré comme faux et sa partie ne s’affiche jamais.
Défi
FacileDans drinks.html, à l’intérieur de chaque <li class="drink"> et après le nom, ajoutez <span class="sold-out">Sold out</span> uniquement lorsque cette boisson est épuisée.
Appuyez sur Exécuter : sur /drinks/, seul le Hot Chocolate affiche Sold out.
Essayez vous-même
<!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>
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Les bases de Django
1Votre premier site Django
Bonjour, DjangoUne deuxième page4Mises en page et fichiers statiques
Héritage des templatesUn titre pour chaque page3Modèles
Votre premier modèleVariables de modèleEntraînez-vous par vous-même : Playground Django