템플릿에서 조건문 사용하기
Coddy Django 여정의 Django 기초 섹션에 포함된 레슨. 23개 중 14번째.
핫초코 기계가 고장 났습니다. 이제 각 음료에는 "sold_out" 값인 True 또는 False가 있으며, 목록에는 주문할 수 없는 음료가 표시되어야 합니다.
{% if %} 태그는 조건이 참일 때만 해당 부분을 표시합니다. 테이블 목록은 다음과 같습니다.
{% for table in tables %}
<li>
Table {{ table.number }}:
{% if table.free %}Free{% else %}Taken{% endif %}
</li>
{% endfor %}Python의 if와 마찬가지로 {% elif %}와 {% else %}를 사용할 수 있고, ==, <, and, or, not으로 비교하며, {% endif %}로 끝납니다. 반복문 안에서는 반복문의 이름을 통해 항목의 값을 읽습니다. 예: table.free. free만 단독으로 사용하면 컨텍스트에 없으므로 거짓으로 간주되어 해당 부분이 표시되지 않습니다.
챌린지
쉬움drinks.html에서 각 <li class="drink"> 안에 음료 이름 뒤에, 해당 음료가 품절된 경우에만 <span class="sold-out">Sold out</span>을 추가하세요.
실행을 누르세요. /drinks/에서 Hot Chocolate에만 Sold out이 표시됩니다.
직접 해보기
<!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>
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
Django 기초의 모든 레슨
직접 연습해 보세요: Django 플레이그라운드