見出し画像

【CakePHP】MVCモデルを予約サイトをイメージしながら理解してみた!

今回は、CakePHPでは、必須知識のMVCモデルについての記事です。

MVCのそれぞれの役割


M(Model)
データベースとのやり取りを行います。
※Controllerにデータを渡す前に整形(使える状態に整える)する場合もあります。

V(View)
テンプレートファイルを読み込んで、ウェブ画面に表示する。
※拡張子の「.ctp」でHTMLやPHP、javascriptを書くことが可能です。

C(Controller)
核となる処理を記載します。
MやVに対して、命令や内部処理、計算を行います。
※Modelの値をもらって、Viewに変数を返すこともできます。

MVCモデルのフロー

この理解は、必須になるので、しっかり押さえておきたい。
図もクリスタで作ってみました!こんな時にソフトが使えると便利ですね。

画像1


予約サイトからイメージしてみた!

まず、ブラウザに予約フォームの内容が表示されているとします。
予約フォームの画面には、Viewで作成したHTMLが出力されています。

予約フォームを入力したとします。
「次へ」や「予約確認画面」へというようなボタンがあるかと思います。

ボタンを押したときにはじめて、Controllerが値を受け取って、内部処理を行います。

そして、Modelに対しては、データベースに登録したい内容や、カラムを取得するために処理が動きます。

Viewへは表示したいファイルに値をセットして、出力させます。

そして、「予約確認画面」が表示されます。

面白いことに、確認画面では、まだDBにデータを登録していないパターンも考えられるようです。

「予約確認画面」から、「完了」ボタンを押して、初めてデータベースに登録が完了します。

では、その値をどのように保持しているのでしょうか?

それは「セッション(session)」に値を保持してくやり方があるようです。。

次回、このセッションについて詳しく説明したいと思います。
ここまで読んでくださり、ありがとうございました!


いいなと思ったら応援しよう!