본문 바로가기

project

Flask Jinja template

728x90

Flask Jinja template


🔖 Flask란?

import flask

위와 같은 명령어로 설치하지만, 놀랍게도 라이브러리가 아니다.

flask는 frame work다.

 

그렇다면, frame work란?

제작자가 의도한 대로 사용하지 않으면, 작동하지 않는다.

즉, 정해진 rule(폴더명, 변수명)을 지켜야 한다.

 


🔖 jinja란?

python flask 패키지에 내장된 템플릿 엔진으로

개발자가 동적으로 변하는 웹 페이지를 쉽게 구현할 수 있도록 도와준다.

 

DataBase	html
    |         |
    -----------
         |
         |
  template Engine
         |
         |
   result Document

보통 app.py에서 render_template을 하면서 list(db)를 같이 보내주고

이를 해당 html에서는 jinja 템플릿 문법을 이용해 편리하게 html에 데이터를 보여줄 수 있는 템플릿 엔진입니다.


 

🔖 간단한 예시

 

📄 app.py

@app.route('/blog')
def blog():
	article1 = '오늘 일기'
	article2 = '오늘 공부할 냉용'
	articleList = [ article1, article2]
	return render_template('blog.html', items=articleList)

 

📄 blog.html

<ul>
	{% for item in items %}
		<li>{{ item }}<li>
	{% endfor %}

	{% if items|length == 0 %}
		<h6>등록된 글이 {% print (items|length) %} 개 있습니다. <h6>
	{% endif %}
</ul>

파이썬 문법

items.length

 

jinja python 문법

items|length

 

 

검색 팁

jinja paython <keyword>

🔖 참고 영상

https://youtu.be/xR7NZuetbVw