본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

Django의 템플릿 태그(template tag)

by easyfly 2025. 6. 19.
반응형

Django의 템플릿 태그(template tag)


HTML 코드 안에서 동적인 값을 출력하거나 로직(조건, 반복 등)을 처리하기 위해 사용하는 특수한 지시어입니다.
{% ... %} 혹은 {{ ... }} 형식으로 사용합니다.

AWS에서 코딩 작업 화면

✅ 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에서 동적 웹페이지를 만드는 핵심 도구입니다.
파이썬 로직을 직접 사용하지 않고도 조건, 반복, 링크, 출력, 상속 등을 처리할 수 있게 도와줍니다.

 

반응형

댓글