テンプレートエンジン

GAEには Django というのが入ってます。これを使えば実際の表示と処理を分割することができます。

テンプレート側にも条件判断や繰り返しなどの簡単な制御を入れることができますので、変数の内容によって表示する、しないの切り替えなどもできます。

{% if logged %}
Login: {{ name }}<hr />
<a href="{{ url }}">Logout</a>
{% else %}
Not logged in.<hr />
<a href="{{ url }}">Login</a>
{% endif %}

{% %} で囲まれた文は Django の命令文

{{ }} で囲まれた文は変数を展開して表示します

{% if logged %} は条件判断文で、logged という変数が1のときとそれ以外のときで処理を変えています。

ここで扱っている変数は、 logged / name / url です。

これらの変数はプログラムの以下の場所で設定しています。

template_values = {
'url': url,
'name': name,
'logged': logged
}
path = os.path.join(os.path.dirname(__file__), 'main.html')
self.response.out.write(template.render(path, template_values))

まず、配列 template_values に

‘テンプレート内のラベル’: 変数名

として登録します。

その後、テンプレートのレンダリングの際に第1引数にテンプレートへのパス、第2引数に変数の配列リストを指定します。template.render(path,

template_values) の部分です。

広告

About sato_c

小学生の頃にインベーダーゲームやPC-8001やApple][といったものを知ってしまい、それ以降ずーっとゲーム好き。でも、あんまりうまくはありません。 仕事は当初はゲーム関係のプログラムやサウンドをやっていましたが、WEB関係を通ったあと、遊技機関係のプログラムやサウンドをやっています。あまり節操がないのか。 現在はJavaですてきなコードを書けるように勉強中。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。