Pythonの軽量Webフレームワークbottleを使ってみる(2)

テンプレートについて補足。
昨日のスクリプトでは、template 関数の引数に直接テンプレートを文字列として渡していた。短いテンプレートならそれでもいいけど、引数として文字列で渡すには長すぎるのが普通だ。そこで、テンプレートそのものじゃなく、名前で指定できるようになっている。
テンプレートは、スクリプトと同じディレクトリの下に views という名前でディレクトリを作って、その中に入れておく。そうすると bottle がテンプレートを見つけて読み込んでくれる。
次のスクリプトでは info という名前のテンプレートを使っている。

# encoding: utf-8

from bottle import route, request, template, run

@route('/')
def index():
    return "<a href="\&quot;./info\&quot;">Link</a>"

@route('/info')
def info():
    ip = request.environ.get('REMOTE_ADDR')
    referer = request.headers.get('Referer') or ''
    return template("info", ip=ip, referer=referer)

run(host='localhost', port='8080', debug=True, reloader=True)

で、テンプレートのほうはこう。

<h1>Remote information</h1>
IP address: {{ip}}

Referer: {{referer}}

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください