Menu
CoddyTech

Condições em templates

Parte da seção Fundamentos do Django do Journey de Django da Coddy. Lição 14 de 23.

A máquina de chocolate quente está quebrada. Cada bebida agora tem um valor "sold_out", True ou False, e a lista deve marcar as bebidas que você não pode pedir.

A tag {% if %}</code exibe seu trecho somente quando sua condição é verdadeira. Uma lista de mesas:</p><pre><code class="language-html">{% for table in tables %} <li> Table {{ table.number }}: {% if table.free %}Free{% else %}Taken{% endif %} </li> {% endfor %}

Assim como o if do Python, ela pode ter {% elif %} e {% else %}, faz comparações com ==, <, and, or e not, e termina com {% endif %}. Dentro de um loop, leia os valores do item usando o nome do loop: table.free. Um free isolado não está no contexto, é considerado falso e seu trecho nunca é exibido.

challenge icon

Desafio

Fácil

Em drinks.html, dentro de cada <li class="drink"> e após o nome, adicione <span class="sold-out">Sold out</span> somente quando a bebida estiver esgotada.

Pressione Run: em /drinks/, somente Hot Chocolate indica que está esgotado.

Experimente você mesmo

<!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>
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos do Django

Pratique por conta própria: Playground de Django