파이썬/파이썬 공부

파이썬 Flask Jinja2

삼전동해커 2020. 9. 16. 15:22

출처 : https://velog.io/@decody/-Flask-Template%EC%97%90-Jinja2-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0

Jinja2란

Jinja2는 Flask에 내장되어 있는 template 엔진이다. 

Jinja의 문법은 아래와 같다.

 - {{ ... }} : 변수나 표현식
 - {% ... %} : if나 for 같은 제어문
 - {# ... #} : 주석


Jinja2 사용하기

저번에 만들었던 template/index.html을 사용해보자.


index.html을 다음과 같이 써준다.


app.py도 수정해준다.

flask run 후 접속해보면


잘 된다.


app.py 먼저 살펴보자.


index.html 파일에 title은 Flask Template Test라고 주었고,
home_str은 Hello Flask!라고 주었고,
home_list는 [1,2,3,4,5] 배열을 주었다.

index.html을 살펴보면

{% if title %}로 title 변수가 존재하면 
{{title}}로 title인 Flask Template Test를 출력하고
{% endif %}로 if문을 끝냈다.

{{ home_str }}로 home_str 변수를 출력했다.


{{ home_list[2:4]로 2번째 인자부터 3번째 인자까지 출력했다.

{% for ~~~ %} 로 for문을 사용해 home_list의 값들을 출력하고
{% endfor %}로 for문을 끝냈다.