Template Language
- 템플릿 언어 (Template Language)는 Django의 템플릿에서 사용 할 수 있는 특별한 문법
- 템플릿 변수 / 템플릿 필터 / 템플릿 태그 / 템플릿 코멘트
템플릿 변수 (Template Variable)
{{ variable }}
- 템플릿 변수는 템플릿이 렌더될 때 해당 변수가 의미하는 값으로 변환
- 뷰(View)에서 가공한 데이터를 템플릿으로 넘겨주면 템플릿에서는 템플릿 변수를 사용해 넘겨받은 데이터에 접근
템플릿 필터 (Template Filter)
{{ variable|filter }}
- 템플릿 변수에 파이프(|)를 쓰고 템플릿 필터를 사용하면 템플릿 변수를 특정 형식으로 변환
default
{{ variable|default:"example" }}
- 변수가 비어 있거나 False면 example 라는 텍스트로 대체
capfirst
{{ variable|capfirst }}
random
{{ variable|random }}
- 만약 variable이 참조하는 값이 ["a","b","c","d"] 인 리스트형이면, 템플릿 변수가 리스트 내의 하나의 원소로 대체
upper & lower
{{ variable | upper }} , {{ variable | lower }}
- 템플릿 변수를 대문자(upper) 또는 소문자 (lower)로 변환
ljust & rjust
{{ variable|ljust:"length" }}, {{ variable|rjust:"length" }}
- variable이 "example" 일 때 {{ variable|ljust:"10" }} 이라면
"example "
- variable이 "example" 일 때 {{ variable|rjust:"10" }} 이라면
" example"
공식문서
템플릿 태그 (Template Tag)
{% tag %}
- 템플릿을 작성할 때 반복문, 조건문 등의 로직을 사용해서 마치 프로그래밍을 하듯 템플릿을 작성
- 기본적으로 제공하는 태그가 있지만, 개발자가 직접 태그를 정의해서 사용할 수 있음
공식문서
사용자 정의