young95
2025. 1. 17. 21:23
2025. 1. 17. 21:23
오늘의 TIL: Django Template
1. Django Template이란?
- Django Template은 HTML 파일에 Python 코드를 삽입하여 동적으로 콘텐츠를 생성할 수 있게 해주는 기능입니다.
- 서버에서 처리된 데이터를 템플릿을 통해 사용자에게 전달하며, 주로 views.py와 함께 사용됩니다.
2. Template 파일의 위치
3. 템플릿 태그와 필터
- 템플릿 태그: 데이터 흐름과 조건문, 반복문 등을 HTML 내에서 작성하기 위해 사용.
- {% for item in list %} ... {% endfor %}
- {% if condition %} ... {% endif %}
- 템플릿 필터: 데이터를 변형하거나 출력 형식을 지정.
- {{ value|lower }}: 값을 소문자로 변환.
- {{ value|date:"Y-m-d" }}: 날짜 형식 지정.
4. Context와 데이터 전달
- views.py에서 템플릿에 데이터를 전달하려면 render() 함수를 사용.
from django.shortcuts import render
def my_view(request):
context = {'name': 'Django', 'items': [1, 2, 3]}
return render(request, 'myapp/index.html', context)
템플릿 (index.html):
- <h1>Welcome, {{ name }}!</h1> <ul> {% for item in items %} <li>{{ item }}</li> {% endfor %} </ul>
- 예시:
5. Static 파일 사용
6. 오늘 느낀 점
- 템플릿 태그와 필터를 활용하면 백엔드에서 처리한 데이터를 효과적으로 사용자에게 전달할 수 있음을 알게 되었다.
- 특히 {% for %} 반복문과 {% if %} 조건문을 이용해 동적인 HTML 구성을 쉽게 할 수 있었다.
- 앞으로는 더 복잡한 템플릿 구조와 확장(Include, Block, Extend 등)을 익히고, 실제 프로젝트에 적용해보고 싶다.