2012-03-13 16 views
17

私はテンプレートレイアウトをtemplate.htmlに保存しておきます。このテンプレートには、バナー、サイドナビゲーション、コンテンツコンテナ、およびフッターが含まれています。フラスコを使用して、これらのページ要素を分割し、banner.html、sidenavigation.htmlなどのファイルを作成し、これらの異なるファイルをtemplate.html内にレンダリングすることはできますか?フラスコに含めることは可能ですか?

+1

ちょうどこれを行う方法を見つけました。 template.htmlにfilename.htmlに保存されているhtmlを含めるには、htmlを挿入する場所に{%include 'filename.html'%}をtemplate.htmlに追加してください。 – Michael

答えて

43

から:http://jinja.pocoo.org/docs/templates/#include

template.html

{% include 'banner.html' %} 
{% include 'sidenavigation.html' %} 
{% include 'content.html' %} 
{% include 'footer.html' %} 
+0

あなたが望むことを実行するためのより強力な方法かもしれないので、Template Inheritanceを参照することもできます:http://jinja.pocoo.org/docs/templates/#template-inheritance –

+1

あなたがJinja2では継承階層を作成できません。深いレベルの文書を継承することしかできません。 – MadPumpkin

3

デフォルトでは、FlaskはJinja2をテンプレートエンジンとして使用します。 JinjaのTemplate Designer Documentationの仕組みを見てください。

関連する問題