Jinja

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
Jinja
開発元 Armin Ronachar
最新版 2.7
プログラミング言語 Python
対応OS クロスプラットフォーム
種別 テンプレートエンジン
ライセンス BSDライセンス
公式サイト jinja.pocoo.org
テンプレートを表示

Jinjaは、プログラミング言語Python用のテンプレートエンジンである。Djangoのテンプレートエンジンに似ているが、Pythonライクな式が使えるようになっている(テンプレートはサンドボックス内で評価されることが保証されている)。テキストベースのテンプレートエンジンであるため、HTMLやXMLだけでなく、どのようなマークアップの文書でも(例えばソースコードなども)生成できる。Jinjaは、BSDライセンスの下で公開されている。

Unixパイプのような簡単な記法でデータを加工できるフィルタシステムを搭載している。

Jinjaでは、タグ[1]・フィルタ・テスト・グローバル[2]をカスタマイズできる。また、Djangoのテンプレートエンジンとは違い、テンプレートからオブジェクトのメソッドを引数付きで呼び出せるようになっている。

[編集]

単純な使用例:

from jinja2 import Template
 
template = Template(u'''\
<html>
<head><title>{{ variable }}</title></head>
<body>
<ul>
{% for item in item_list %}
   <li>{{ item }}</li>
{% endfor %}
</ul>
</body>
</html>''')
 
print template.render(
    variable='Value with <unsafe> data',
    item_list=[1, 2, 3, 4, 5, 6]
)

外部リンク[編集]