現場Rails Chapter2 MVCについて
YAMLについて
YAMLはあくまで「仕様」
インデントを使ってデータの階層構造を表すためのもの
あらかじめ設定しておく時によく使用する(日本語訳など)
ルーティングとは
リクエストに対応するレスポンスを返すためにどの処理を実行するのかを定義したもの
Modelの役割
データベースに保存や読み込みをする場所
Viewの役割
ブラウザに表示する画面
必要に応じてコントローラからモデルなどの情報を受け取る場所
Controllerの役割
ユーザがブラウザなどの入力(リクエスト)を受けて、適切なレスポンスを返す部分
必要に応じてモデルを使ったりビューを呼び出したりする
HTTPリクエストとして送るURLやGET、POSTなどといったHTTP
メソッドをもとに「そのリクエストを処理する担当箇所」を特定する。
(routes.rbで定義されたルーティングによって特定する)
「そのリクエストを処理する担当箇所」とは
どのコントローラ(クラス)でどのアクション(メソッド)なのかを決めること。
●処理の順番
1.クライアントからのリクエストはWebサーバを通してRailsアプリケーションに渡す
2.クライアントのリクエストに対して、ルーティングからどのコントローラのどのアクションを実行するのかを特定し、アクションを実行する。
3.アクションを実行した時、必要に応じてモデルを使用する。
例:localhost/users/1
(ユーザの詳細ページを見たい場合、アクションを実行した際、Userオブジェクト群の中から呼び出したいUserを呼び出す、など)
4.アクションに対応したビューテンプレートを用いてHTMLなどを生成する
5.コントローラがレスポンスを作成して、Webサーバからクライアントへ返す(表示する)。
参考URL
・YAMLについて