オープンデータとプログラミング

Google App Engineでjinja2を使ってみる

今回はGoogle App Engineでテンプレートエンジンjinja2を使用してみます。
まずはHTMLのテンプレートを用意します。
ポイントは9行目の”{{ name }}“です。
ここの所にPythonのプログラムで値を指定します。
作成したテンプレートファイルは、アプリケーションの格納フォルダ(app.yami等があるところ)に置いておきます。

■template.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html lang="ja">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>私のホームページ</title>
</head>
<body>
<h1>私のホームページです</h1>
{{ name }}
</body>
</html>

.renderメソッドでnameに値をセットしてやります(8行目)

■main.py

#coding: UTF-8

import webapp2
from jinja2 import Template, Environment, FileSystemLoader

class MainHandler(webapp2.RequestHandler):
	def get(self):
		self.response.write(tmpl.render(name=u'山田太郎'))

tmpldir = '.'
env = Environment(loader = FileSystemLoader(tmpldir, encoding='utf8'), autoescape = False)
tmpl = env.get_template('template.html')

app = webapp2.WSGIApplication([('/', MainHandler)], debug=True)

実行すると、”山田太郎”という文字列がテンプレートに埋め込まれて表示されます。

myhomepage

Comments are closed.