개발로 자기계발
Published 2023. 1. 25. 16:28
Jinja Templating 개요 - 77 Develop/FastAPI
728x90

 

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
profile

개발로 자기계발

@김잠봉

틀린부분이나 조언이 있다면 언제든 환영입니다:-)