ID:ajttSBNbAu5L さんの質問

1,339 views

MVCについて質問があります!!

データベースとのやり取りを担当するクラスであったり、ユーザー認証や権限管理を担当するクラスというのは、MVCのMに該当するのでしょうか?

というよりは、どのクラスはMVCのどこに該当するみたいな発想自体が誤っていますでしょうか?

詳しい方教えて下さいませ!

登録日:2014-09-15 · カテゴリー:一般

みんなの回答 5 件

2014-09-15 · ID:S77vusTNIJwy 報告

MVC の概念から勉強し直してくださいww

2014-09-15 · トピ主 報告

いや、冗談でなくてマジ質問なのですが。。。

2014-09-16 · ID:iw1ZFdY/ytf3 報告

コメ主もたぶん分かってないはずw

2014-09-15 · ID:XHcqikS/fkbf 報告

そんなことより****しようぜ!

2014-09-15 · ID:ioApkFWGpHlO 報告

難しい質問はしないで下さい。
ここはw3qですよ。

2014-09-15 · ID:fgP9JgSWAaIN 報告

Model:具体的な処理を担当
View:表示部分を担当
Controller:Viewで指示された内容をModelに伝える
って感じ。
ユーザー認証で例えるなら
----
(ユーザー)ログイン用のURLにアクセス
(C)GETだからログインフォームのあるページを表示ね
(V)おk
<ログインページが表示される>
(ユーザー)IDとパスワードを入力して送信っと
(C)POSTきた!このIDとパスワードに合致するユーザーいる?
(M)データベースの中探してみるわ……ないみたい
(C)あらら……じゃ、間違ってるよっておしえてあげよう
(V)あいよー
<ログインできなかった旨が表示される>
(ユーザー)あれ?こうだっけ?もっかい送信、っと
(C)またPOSTきた!これはどう?
(M)どうだろ……見つけた!該当ユーザーの情報あげるよ
(C)よし!じゃあ、セッションにこれ保存して……マイベージ表示しようか
(V)ほいほい
<マイベージが表示される>
----
こんな感じ?

2014-09-15 · ID:qoggnEF5YUFP 報告

追記

  • 実際は「セッションにデータを保存する」処理もモデルに委譲することが多い
  • ログインとマイページは別のコントローラーで処理するのが一般的
    まぁ、あくまで参考ということで
2014-09-16 · トピ主 報告

ありがとうございます!!たいへん、さんこうになります!

2014-09-16 · トピ主 報告

つまり、認証管理クラスも権限管理クラスもDBとのやりとりを担当するクラスもMVCのModelに該当するということで認識は合ってますでしょうか?

2014-09-16 · ID:jObllCjtkVQe 報告

上の説明と俺の認識は違う。モデルはあくまでデータの読み書き(CRUD)。データ(モデル)のコントロール(処理)を担うのがコントローラ。だからAuthやACLはコントローラの範疇ではないかな。FuelPHPではAuthはモデルを処理するパッケージとして提供されてる。

2014-09-16 · ID:iw1ZFdY/ytf3 報告

いや、モデルでしょw

2014-09-16 · ID:iw1ZFdY/ytf3 報告

コントローラーはデータの処理じゃなくてデータの操作を行なうんだよ。コントローラーでデータの処理やら加工のロジック入れてたら、コントローラーがふくれあがっちゃうでしょうに。

2014-09-16 · ID:jObllCjtkVQe 報告

そだな。操作だ。ゴメソ。

回答の受付は終了しました。

関連トピック