Django template – list empty 처리
빈 리스트를 장고 템플릿에서 표현하는 방법은 아래 처럼 <strong>\{\% empty \%}</strong>
구문을 활용하자!
{% for item in itemlist %} {% if item.is_deleted == 1 %} {% else %} {% now "Y-m-d" as todays_date %} <tr class="align-middle"> <td class="white-space-nowrap ps-0"> <a href="{% url 'orderitem_view' pk=item.id %}">{{ item.id }}</a> </td> <td class="align-middle" > <p class="mb-0">{{ item.product }}</p> </td> <td class="align-middle text-end" > <p class="mb-0">{{ item.date_due | date:"m-d"}}</p> </td> <td class="align-middle text-end" > <p class="mb-0">{{ item.quantity|intcomma }}</p> </td> <td class="align-middle text-end" > <p class="mb-0">{{ item.workline }}</p> </td> {% endif %} </tr> {% empty %} <tr class="align-middle"> <td colspan="5" class="align-middle text-center" >출고예정 주문이 없습니다.</td> </tr> {% endfor %}
코드에 편리한 게 하나 더 있네 😀 intcomma
도 활용하면 숫자에 콤마를 찍어줘서 읽기 편하게 해준다. 이건 다른 포스팅에서 참고하세요.
혹은 <strong>{% if %}</strong>
구문으로도 판단할 순 있다. 원본은 여기 https://docs.djangoproject.com/en/4.0/ref/templates/builtins/
{% if athlete_list %} Number of athletes: {{ athlete_list|length }}{% else %} No athletes.{% endif %}