2013/10/10

[Python][Google App Engine]Jinja2を使う

どうやら、新しいGoogle App EngineではJinja2テンプレートが標準でついているようなので、ちょっと試しに使ってみる。

各ファイルの設定方法は下記の通り

app.yaml

libraries:
- name: jinja2
  version: latest
hoge.py(実行ファイル)
import os
import jinja2

JINJA_ENVIRONMENT = jinja2.Environment(
    loader=jinja2.FileSystemLoader(os.path.dirname(__file__)),
    extensions=['jinja2.ext.autoescape'],
    autoescape=True
)

class Hoge(webapp2.RequestHandler):
  def get(self):
    template_values = {
      'test':'this is JINJA'
    }
    template = JINJA_ENVIRONMENT.get_template('index.html')
    self.response.write(template.render(template_values))
index.html(テンプレート元になるファイル)
<!DOCTYPE html>
{% autoescape true %}
<html>
  <body>
    {{ test }}
  </body>
</html>
{% endautoescape %}
queryをループする処理はまだ必要なかったので調べなかったのですが、変数を埋め込むだけだったら、これだけでいけそうです。

0 コメント:

コメントを投稿