今回は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)
実行すると、”山田太郎”という文字列がテンプレートに埋め込まれて表示されます。
