はじめに
Djangoを使っていく上で絶対に知っておかないとエラーが起きますし、起きた時に対処できません。ですので今回はviewについてまとめたいと思います。
viewとは
Viewとは、ユーザーからHTTPリクエストを受けて、それに応じたHTML形式のレスポンスを返すことです。
具体的に説明するとHTTPリクエストされた時にプロジェクトルーティング→アプリケーションルーティング→ビューと進んでいきます。ビューで記述された処理からフォーム・モデル・テンプレートとやり取りをしてレンダリングしHTTPレスポンスとして返します。下記の図を見ていただくとイメージしやすいと思います。
なのでviewというのは司令塔のような役割を持っています。
-
HTTPリクエスト
WebブラウザからWebサーバーに対する要求のこと。
あなたが開いているWebページで別のページへのリンクを押したときに、WebページからWebサーバーへリンク先のhtmlを渡すように要求します。 この要求をHTTPリクエストと言います。 -
HTTPレスポンス
HTTPリクエストに応じてWebサーバーからWebブラウザに返すことをHTTPリクエストと言います。
WebサーバーはHTTPリクエストを受けて、違うページなどを表示させます。 -
レンダリング
何らかのデータを元にして表示内容を作ることです。
WebサーバーはHTTPリクエストを受けて、 受け取った情報を元にWebページを作成します。 このWebページをHTTPレスポンスとして返します。この受け取った情報を元に表示することをレンダリングと言います。