search
LoginSignup
23
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

posted at

Jinja2の基本的な使い方

目的

Jinja2利用の際の超基本的な部分の備忘録

前提

Python 3.5.2
Jinja2 2.9.6

手順

こんな感じでファイルをおきます。

ファイル配置
./
 ├template.txt.j2
 └friend_builder.py

テンプレートファイルの準備

テンプレートファイルの中に特定のパラメータを埋め込むことができます。
繰り返しの構文を記述したりといったことも可能です。

template.txt.j2
すごーい!
きみは
    {{character}}
が得意なフレンズなんだね!
たーのしー!

テンプレートに値を突っ込むためのスクリプト

friend_builder.py
from jinja2 import Template, Environment, FileSystemLoader


env = Environment(loader=FileSystemLoader('.'))
template = env.get_template('template.txt.j2')

data = {
    "character": "料理",
}

rendered = template.render(data)

print(str(rendered))

処理内容としては、

  1. template.txt.j2をテンプレートとして取得
  2. テンプレートに記述されている {{character}} に値(料理)を突っ込む
  3. 値を突っ込んだ結果をレンダリングして表示

というこれ以上、シンプルにしようにもできないよ!な内容です。

実行結果は以下の通り。

出力結果
$ python friend_builder.py
すごーい!
きみは
    料理
が得意なフレンズなんだね!
たーのしー!

テンプレートの{{character}}部分に料理が無事、埋め込まれてますね。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
23
Help us understand the problem. What are the problem?