FuelPHPサイド
FuelBeans 27 : モデルも出る
MVCフレームワークでDBをやっといて、モデルをやっていないというのは、片手落ちでした。
と言いつつも、今までのチュートリアルで、最短になります。
MVCのモデルは、別にDBに限っているわけでありません。というよりも、もともとMVCモデルにはDBのアクセスは入っていなかったそうです。
ですがLAMP構成上で動作するPHPのフレームワークでは、モデルは大抵の場合DBになります。そのため、DBアクセスを閉じ込めるために使用されることが多いのです。
FuelPHPのモデルには、何の規則もありません。Modelクラスを継承することになっていますが、Modelクラスは空のクラスです。コントローラーにあったような、before()もafter()も用意されていません。
また、データー追加時のバリデーションやら、ユーザー入力のバリデーション(本来、モデルが担当するのか、コントローラーが担当するのかで、これは意見が別れるところみたいですね。)を持つこともできません。バリデーションの情報をモデルに入れ、コントローラーのコードを減らそうかとも考えましたが、バリデーションクラスの作りがPOSTやGETなどの入力に対するものになっており、結果として返されるものもエラーメッセージや、バリデーション済みデーターと、コントローラーで便利に使用することを目的として設計されているようですから、モデルに押し込んでも不自然です。
ですから、モデルはほとんど、DBや時にファイルに対するCURD、DBへの存在チェックやら、SELECT文を利用した各種の検索などになります。
PHPが初めてのプログラミング言語で、FuelPHPが初めてのフレームワークである方が、モデルはDBのラッパーであると勘違いしないように書いて見ました。
乱暴な言い方ですが、FuelPHPでは、DBアクセスをまとめておくクラス的に使用するだけで良いでしょう。だって、特に枠にはめられている部分がありませんからね。
| FeulBenas 26 : サーバーへアップアップ< 前 | 次 >FuelBeans 28 : Shooting Brake 1 |
|---|
| < 前 | 次 > |
|---|