study-note

1. 基本構造と流れ

目次

Playアプリのプロジェクト構成

典型的なPlayアプリ構造:

project-root/
├── app/               メインのアプリコード
   ├── controllers/   コントローラ定義(C
   ├── models/        ドメインロジックやDB関連(M
   └── views/         HTMLテンプレート(V
├── conf/
   └── routes         ルーティング定義ファイル
├── public/            JS, CSS, 画像などの静的ファイル
├── build.sbt          ビルド設定ファイル

リクエスト処理の流れ

ユーザーがブラウザでページにアクセスすると、

  1. routesファイルでURLに対応するControllerのメソッドが決まる
  2. Controllerが呼ばれ、必要に応じてModelやViewを呼ぶ
  3. 結果(HTMLまたはJSONなど)を生成し、レスポンスとして返す


[ブラウザ]  URLアクセス
      
[conf/routes]  どのController/Actionに渡すか決定
      
[Controller]  ModelやViewを使用
      
[View or 結果]  ブラウザへHTMLなどを返す

routesファイルの基本構文

メソッド   パス            コントローラとアクション
-------------------------------------------------------
GET       /home          controllers.HomeController.index
POST      /user/create   controllers.UserController.createUser


2. Controller