takashi kono's blog

コーヒーとキーボードと共に何かを記録していくブログ

jinja2 備忘録

jinja2 の簡単な使いかたについての備忘録

jinja2 について調べてみたのはいいが、使えなくならないために備忘録として残す。

いきなりサンプル

Code
ファイル名: jinja2_sample.py

# coding: utf-8
from jinja2 import Template, Environment, FileSystemLoader

env = Environment(loader=FileSystemLoader('.'))
template = env.get_template('sample.tpl')

data = {'name': 'Kuro', 'lang': 'Python'}
disp = template.render(data)
print(disp)

Template file
ファイル名: sample.tpl

My name is {{ name }}. I like {{ lang }}.
{% set text=name %}
{{ text }}
{{ text }}
{{ text }}
{{ text }}
{{ text }}

2つのファイルを作ったので実行してみる

データは辞書にして渡す必要がるようです。
テンプレートファイルに set を入れるとテンプレートファイル内で変数として扱えるようです。便利。

実行結果

$ python3 jinja2_sample.py
My name is Kuro. I like Python.

Kuro
Kuro
Kuro
Kuro
Kuro

今のところ、テンプレートファイルのファイル名をコードに埋め込んでいるので、外だししたほうが良さそう。

まぁ、手順書を作るんならこの辺を使えればだいたいいい気がする。

以上