728x90
HTML 로 데이터 전달
Flask
from flask import Flask, render_template, redirect, url_for
app = Flask(__name__)
@app.route('/')
@app.route('/index')
def index():
return render_template('index.html')
@app.route('/review')
def review():
return render_template('review.html')
@app.route('/test')
def test():
color = 'red'
colors = ['red', 'green', 'blue']
blogger = {'name': 'jvvp', 'eloc': 'songpa'}
return render_template('test.html', d1=color, d2=colors, d3=blogger)
@app.errorhandler(404)
def page_not_found(error):
return render_template('page_not_found.html'), 404
if __name__ == '__main__':
app.run(debug=True)
HTML
{% extends 'base.html' %}
{% block title %} 데이터 테스트 {% endblock %}
{% block content %}
color is {{ d1 }}
<br>
{% for c in d2 %}
{{ c }}
{% endfor %}
<br>
{% for k, v in d3.items() %}
key: {{ k }}, value: {{ v }}
<br>
{% endfor %}
{% endblock %}
다음 render_template() 함수에서 전달한 매개변수를 {{ }} 안에 넣어서 사용합니다.
return render_template('test.html', d1=color, d2=colors, d3=blogger)
for 문은 {% for ~ %} {% endfor %} 로 나타내고 전달받은 변수는 마찬가지로 {{ }} 로 감싸줍니다.
{% for ~ %} 안의 변수는 {{ }} 로 감싸지 않아도 됩니다.
{% for c in d2 %}
{{ c }}
{% endfor %}
딕셔너리 타입도 다음과 같이 사용합니다.
{% for k, v in d3.items() %}
key: {{ k }}, value: {{ v }}
<br>
{% endfor %}
'Application > Flask' 카테고리의 다른 글
파이썬 Flask 라우팅(route) 알아보기 (0) | 2020.08.20 |
---|---|
파이썬 Flask 폼(Form) 전송 (0) | 2020.07.29 |
파이썬 Flask 리다이렉트(Redirect)와 에러 페이지 (0) | 2020.07.29 |
파이썬 Flask 반응형 템플릿 구해서 고치기 -2 : 리소스 경로잡기(Static Files) (0) | 2020.07.29 |
파이썬 Flask 반응형 템플릿 구해서 고치기 -1 : 무료 템플릿 다운로드 (0) | 2020.07.29 |