| 38件目(121件中) |

CakePHPとMVC設計

固定リンク:#0000000086   投稿者:ZiSTA 日時:2008-04-07 10:30:41   コメント( 0

CakePHPを使ったMVC設計のベストプラクティスという記事が注目されています。


""
モデルに置けるあらゆるものは、そうすべきである(少なくとも「モデルかコントローラか」といった場合には。やり過ぎてビューロジックをモデルに置いた人を見たこともあるが…)。アプリケーションの核となるビジネスロジックと連携しないものは(セッション管理、リクエスト・レスポンス処理、セキュリティやアクセス制限に関するもの)、コントローラに置いたままにすべきである。それ以外のあらゆるものはモデルに放り込め。
""


サンプルコードの特徴はモデルのfindメソッドをオーバーライドして一つ目の引数で使えるキーワードを増やしている事。CakePHPの1.2betaではモデルのfindAllメソッドではなく、の汎用性を高めたfindメソッドを使うようになっています。find('all',$options)のように一つ目の引数に検索タイプを指定して使用します。サンプルコードでは、'popular'という検索タイプを指定できるようにfindメソッドをオーバーライドして拡張しています。

それからCakePHP全体的にそうなのですが、デフォルトのパラメータをオブジェクトの属性として記述しておいて、メソッドでは引数から受け取ったパラメータでデフォルトのパラメータを上書きする(array_merge)というやり方が見られます。

 

コメント

| 38件目(121件中) |
↑ ページトップ