私は PHP フレームワークが初めてで、ベンチャーを始めるために FuelPHP を試してみました。数日間のテストの後、私は物事がどのように機能するかを理解しました. コントローラーはアクションを制御し、ビューは $content を制御し、テンプレートはレイアウトを制御します。しかし、モデルについてはどうですか? それらは何のためにあるのでしょうか?
3 に答える
モデルは、他の場所に保存されたデータの抽象化であり、通常のオブジェクトと同様に、標準のオブジェクト作成、メソッド呼び出し、プロパティ アクセスなどを通じてデータ アクセスをカプセル化します。ここでの主なアイデアは、コントローラー (またはデータを必要とするオブジェクト) は、データの取得方法やデータの保存方法を知る必要がないということです。ファイル、Web (Web サービス経由)、データベースなど、データを永続化できるものなら何でも格納できます。データは、Web サービス リクエスト、データベース クエリ、ファイル読み取りなどで取得できます。
たとえば、「ID 1 の生徒の記録をstudent := new student(1);
くれ」は、生徒の名前や住所などにアクセスできるようにするだけの簡単なものです。しかし、生徒はどのようにしてデータを取得するのでしょうか? データはどこに保存されますか? これは問題ではなく、必要に応じて調整できます (または調整可能にする必要があります)。
あなたは言ったかもしれません
ID、名前、詳細、および ContactType プロパティを持つ連絡先。
アイデアは、それを最小限に抑えることです。基本的には、エンティティのすべての有用なプロパティをカートに入れるものです。
これが MVC の現在の定義です。その中のバックエンドについては何もありません。それは、モデルと、基礎となるデータがDBにどのように格納されているかだけを知っている別のライブラリ/ dllになります。
モデルはあなたのデータを制御し、あなたのデータベースと直接連絡を取りますここを読んでください