render_to_response
散々使ってますが、一応紹介すると、テンプレートをレンダリングしてクライアントに結果を返すショートカット関数です。
render_to_response(
'template.html',
{'key':'value',},
context_instance=RequestContext(request),
mimetype='text/html',
)
こんな使い方です。mimetypeは、レスポンスのContent-Typeなので、テンプレート次第で text/xml という指定もできます。
redirect
前回紹介したHttpResponseRedirectの動作もショートカット関数が用意されています。
redirect(
'/redirect_path',
permanent=False,
)
こんな使い方です。
permanentはデフォルトが False です。リダイレクトを 302 にしたいときは permanent=Trueとするだけ。
Http404
ショートカットですが、ショートカット関数ではなく例外です。
使い方としては
requireParam = request.GET.get('requireParam', 0)
if requireParam == 0:
raise Http404
となります。
サンプルコードは、requireParamが指定されていない時に request.GET.getの第二引数で指定した 0 が返ってくるので、requireParamが 0 のときは、HTTP 404を返す処理になっています。
まとめ
ショートカット関数は、自分でインスタンスを作ったりする部分を省略できるので、楽になります。知っておいて損はないと思います。他にも便利な関数があるので、それはまた別の機会に。
次回は HTTPリクエストをあれこれいじって、フォームの値を取得したりしてみたいと思います。