インデックスビューの作成

公開日:2020-08-26
最終更新日:2020-09-14

ビューは,リクエストオブジェクトを受け取って,レスポンスオブジェクトを返す役割を担います.では,http://localhost:8000/touch/にアクセスしたときに,touchアプリケーションのトップページが表示されるようにしてみましょう.touch/views.pyに以下のコードを記述してください.

IndexViewは,インデックスビューに対応するクラスベースビューです.Viewクラスを継承して定義します.クラスベースビューについては,文献[1][2]を参照してください.

このビューを呼ぶために,URLとビューとを対応付けておく必要があります.そのためにはURLconfが必要になります.touch/urls.pyを新規作成します.このtouch/urls.pyに以下のコードを記述してください.

さらに,このtouch/urls.pyの記述を反映させるために,次のように,webgame/urls.pydjango.urls.includeimportを追加し,urlpatternsリストに'touch.urls'に対応したパスを追加してください.

ブラウザで下記のURLにアクセスしてみましょう.

http://localhost:8000/touch/

「Touch, touch, touch!へようこそ!」と表示されました.ページのタイトルは「Touch, touch, touch!」となっています.このページは,リスト1の12行目に記述されているように,IndexViewクラスのget()メソッドにおいて,テンプレートがレンダリングされることで表示されます.では,URLにアクセスされた後,どのような流れでこのこのget()メソッドが表示されるのかについては,次回で説明します.

ビューの作成の詳細については,文献[3][4]を参照してください.


参考

  1. クラスベースビュー | Django ドキュメント | Django
  2. 現場で使える Django の教科書《基礎編》 # 5.2 ビュー関数の書き方(関数ベース vs クラスベース)
  3. はじめての Django アプリ作成、その 1 | Django ドキュメント | Django # はじめてのビュー作成
  4. 現場で使える Django の教科書《基礎編》 # 第5章 ビュー