Develop/FastAPI
Jinja Templating 개요 - 77
동석해요
2023. 1. 25. 16:28
728x90
SMALL
1. Jinja란?
- 빠르고 표현력이 풍부하며 확장 가능한 템플릿 언어
- Dom에서 Pythn과 유사하게 코드를 작성할 수 있다.
- 템플릿은 최종 문서 내에서 렌더링할 데이터를 전달한다.
- 모든 텍스트 기반 형식(HTML, XML, CSV, LaTeX 등)을 생성 가능.
2. Jinja 표현식
- {% ... %} if, for문 등에 대한 표현식
- {{ ... }} 템플릿 출력으로 인쇄할 표현식
- {# ... #} 템플릿 출력에 포함되지 않는 표현식
3. Jinja Tag & Scripts 장점
- Jinja 태그는 HTML과 유사한 태그를 사용하여 백엔드 데이터를 사용하면서 개발자에게 도움을 준다.
<link rel="stylesheet" type="text/css" href="{{( url_for('static', path='/todo/css/base.css') }}">
- 전체 목록을 프론트 엔드로 전달하고 템플릿에서 간단한 for문으로 각각 데이터를 받을 수 있다.
ex) python 파일
context:
{
"todos": todo_list
}
ex) html 파일
{% for todo in todos %}
Do soemthing with todo
{% endfor %}
- 변수는 필터로 수정할 수 있고 ( | )로 변수와 구분 된다.
{% if todos %}
Displaying: {{ todos|length }} Todos
{% else %}
You don't have any todos :)
{% endif %}
{{ todos|length }} == length(todos)
728x90
SMALL