View
フレームワークの概要の章で整理したように、DjangoはMVTというコンセプトで動作している。Viewはその名前の通り、表示部分の処理を担っている。
Viewでやるべき処理とはなんだろうか。
Modelではシステムで取り扱うべきデータの定義がされている。 Templateでは、ブラウザでどう表示させるかをHTML/CSSやjsで定義している。 そして、URLConf(urls.py)ではユーザからの指示に対するルーティングの定義が行われている。
つまり、Viewの役割は簡単にいうと以下のような「橋渡し」である。
指定されたURLと、読み出されるべきテンプレートとの橋渡し
テンプレートで使用されるデータと、データが定義されているModelとの橋渡し
そして、Webアプリケーションでは、橋渡しの仕方にある一定のパターンがある。 基本的には以下のような処理そのものか、その応用がほとんどだ。
保存済みデータの一覧を取得・表示
保存済みデータの詳細を取得・表示
データを作成・更新・削除するためのフォーム の項目取得・表示
Djangoではこういった汎用的な処理を効率化するために、いくつかの基本的なView classが用意されている。それらは、generic(生成的な)viewと呼ばれている。
関数ベースでビューを生成していくことも可能だが、まずは汎用的なClass Base Viewを使っていく。
最終更新
役に立ちましたか?