2011-10-29 6 views
0

を置くために、それはこの探す場所:このパラダイムでMVC、カスタムフレームワーク:私の枠組みの中でのコントローラ/アクション

design 
modules 
    /links 
    /files 
    index.php -> view 
    addNewItem.php -> action 
    deleteItem.php -> action 

を、すべてのコントローラは、一つのファイルにあり、私はそれがより良い概観を持っていると思います。しかし、私は他の解決策を見て、すべてのアクションを1つのコントローラに入れ、ファイルはメソッドを使用していました。それは大丈夫ですが、最終的に大きなファイルを得ることができました。どの方法が好ましい方法ですか、あなたはどう思いますか?

答えて

0

MVCパターンを使用すると、複数のコントローラ間で現在のコードを分割し、各コントローラに複数のアクションが含まれるようにする必要があります。

たとえば、サイトにユーザーエリアがあるとします。あなたは、ユーザーコントローラの魔女にレジスタ、プロファイルビュー、およびプロファイル編集アクションがあるようにすることができます。それだけです。また、認証のための別のコントローラ(ログインとログアウトアクション)が必要になります。

次に、MVCパターンを使用すると、ユーザーを定義するユーザーモデルのように、すべての "dbエンティティ"用のモデルを作成する必要があります。さらに進めば、ユーザーテーブルマッパーリポジトリ)は、基本的なCRUD(およびより多くのアクション)のためのすべてのdbクエリをユーザに実装します。

MVCのコンセプトをよりよく説明し、いわゆる "古典的な"または "プレーンな" PHPを上回る利点を説明する、PHPのために構築されたMVCフレームワークをダウンロードすることをお勧めします。

は、私はあなたがMVCのスタータ用としてドキュメント本当に本当に良いCodeIgniterフレームワークを試してみ勧め、またはあなたが本当に深くに行くことwhant場合明らかにする必要があるZend Framework Quick Start turorialを行う施し、より良いMVC eavenを知るためにMVCフレームワーク構造に含めるべきものとその使用方法の詳細なビュー。

関連する問題