概要
チュートリアルをやっているときに、return renderが分からなかったのでまとめてみました。
return renderとは
views.pyで使われるメソッドで、指定されたtemplateをレンダリングして、HTTPレスポンスを返すことです。
初心者の僕にはレンダリングやHTTPレスポンスなど何を言っているのか分からなかったので、まずはその用語から調べてみました。
- HTTPレスポンス
HTTPリクエストに対する返答がHTTPレスポンスです。
あなたが開いているWebページで別のページへのリンクを押したときに、WebページからWebサーバーへリンク先のhtmlを渡すように要求します。 この要求をHTTPリクエストと言います。 Webサーバーは要求を受けて、htmlをWebページへ返します。 この返答がHHTPレスポンスとなります。
参照サイト:「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
- レンダリング
何らかのデータを元にして表示内容を作ることです。
WebサーバーはHTTPリクエストを受けて、 受け取った情報を元にWebページを作成します。 このWebページをHTTPレスポンスとして返します。この受け取った情報を元に表示することをレンダリングと言います。
参照サイト:「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
参照サイト:Wikipedia
- 改めてreturn renderとは
htmlページを作成して、HTTPレスポンスとしてWebページに返すことです。
return renderの使い方
return render(受け取った第一引数,表示させたいHTML,渡したい変数)
-
受け取った第一引数
これにはrequest
が大体入っている印象です。ここにはgetまたはpostの情報や、セッション情報が入っています。 -
表示させたいHTML
ここには表示させたいHTMLを指定します。 -
渡したい変数
ここには辞書型のデータを指定します。例えば適当な変数posts
として、このposts
にはデータベース操作をして取得したデータを入れます。
まとめ
return render
はviews
で使いますが、今回調べていく過程でviews
はforms
、models
、template
とを操作する大事なファイルであり、renderメソッドは指令を出すためにしっかりと理解して使う必要があると感じられました。