Jinja2
を使用してテンプレートを個別のファイルに分割するためのブロックがあるため、{% block _name_ %}{% endblock %}
でそれを実装するのはかなり簡単だとFlask
思いますが、頭を包むことはできません。
誓約
私はこの構造を持っています:
daddy_template.html
son.html
daughter.html
すべてのテンプレートには、おおよそ次の内容が含まれています。
<!-- daddy_template.html -->
<div id="son">{% block son %}{% endblock %}</div>
<div id="daughter">{% block daughter %}{% endblock %}</div>
<!-- son.html -->
{% extends "daddy_template.html" %}
{% block son %}
<p>Knock, knock</p>
{% endblock %}
<!-- daughter.html -->
{% extends "daddy_template.html" %}
{% block daughter %}
<p>Who is it?</p>
{% endblock %}
ターン
render_template()
テンプレートを準備するのはFlaskだけであり、一度に1つのテンプレートしか必要としないため、関数パラメーターで提供される1つのブロックを除くすべてが省略されます。
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def daddy():
return render_template('son.html')
名声
では、どのようにケーキを食べて食べますか? この場合、レンダリング時に との両方son.html
をdaughter.html
含めますか?daddy_template.html