1

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.htmldaughter.html含めますか?daddy_template.html

4

1 に答える 1

5

ブロックを使用する代わりに、 include ステートメントを見てください。

于 2013-03-19T16:05:50.580 に答える