컴퓨터 활용/노년에 즐기는 코딩
Django의 템플릿 태그(template tag)
easyfly
2025. 6. 19. 11:31
반응형
Django의 템플릿 태그(template tag)란
HTML 코드 안에서 동적인 값을 출력하거나 로직(조건, 반복 등)을 처리하기 위해 사용하는 특수한 지시어입니다.
{% ... %} 혹은 {{ ... }} 형식으로 사용합니다.
✅ 1. 템플릿 태그의 종류
🔷 출력 태그: {{ ... }}
- 파이썬 코드의 변수 값을 HTML에 출력할 때 사용합니다.
<p>안녕하세요, {{ username }}님!</p>
예: username = "김철수"일 경우
→ 출력: 안녕하세요, 김철수님!
🔷 제어 태그: {% ... %}
조건문, 반복문, 템플릿 상속 등 로직을 처리합니다.
(1) {% if %} 조건문
{% if question_list %}
<p>질문이 있습니다.</p>
{% else %}
<p>질문이 없습니다.</p>
{% endif %}
(2) {% for %} 반복문
<ul>
{% for question in question_list %}
<li>{{ question.subject }}</li>
{% empty %}
<li>등록된 질문이 없습니다.</li>
{% endfor %}
</ul>
(3) {% load %}
템플릿 필터나 사용자 정의 태그를 로딩할 때 사용합니다.
{% load static %}
<img src="{% static 'images/logo.png' %}">
(4) {% url %}
뷰 이름으로 링크를 만들 때 사용합니다.
<a href="{% url 'pybo:detail' question.id %}">상세 보기</a>
✅ 2. 템플릿 태그와 템플릿 필터의 차이
항목 | 설명 | 예시 |
템플릿 태그 | 제어 로직 (if, for, url 등) | {% for item in list %} |
템플릿 필터 | 값 처리 (형식 지정 등) | `{{ date |
✅ 3. 사용자 정의 템플릿 태그도 가능
직접 커스텀 태그를 만들어 사용할 수도 있습니다.
예: 가격을 천 단위로 쉼표 표시하기 같은 기능
✅ 결론
템플릿 태그는 HTML에서 동적 웹페이지를 만드는 핵심 도구입니다.
파이썬 로직을 직접 사용하지 않고도 조건, 반복, 링크, 출력, 상속 등을 처리할 수 있게 도와줍니다.
반응형