2012-04-13 7 views
1

私はモデルの実装に疑念があり、問題の合理的な説明を見つけることができません。 私が働いている例を教えてください、それはブログを実装しているMVCです。MVC - モデルの実装

私は、結果的にModelPostが必要なすべてのメソッドが含まれている必要がありModelPost

を持っている特定のポストブログ を読み取る制御を担当するControllerPostのですか?

method getPost() 
method getComment() 
method getArchive() 

この方法を分離する必要がありますか?

ModelPost 
    method getPost() 
ModelComment 
    method getComment() 
ModelArchive 
    method getArchive() 

これは私に多くの混乱を引き起こします。私は例を見ていますが、適切な説明はありません。 私はそう

は、私が働いてきたほとんどのプロジェクトでは、すべての

答えて

2

ありがとうございました、より説明的になろうと、それは私の疑問に明確だった願って、我々は、データベーステーブルのモデルクラスを持っていました。 主にZend MVCを使用することは、各エンティティのZend_Db_Tableクラスを拡張することを意味します。 あなたのケースでは、コメント、投稿、アーカイブが異なるテーブル(私が想定しているもの)であれば、get、update、insert、delete(および他の同様の)メソッドを使って別々のクラスを構築します。

このトピックオフビットを操縦するかもしれませんが、私はあなたがドメイン駆動開発(DDD)に見てお勧め:

Domain-driven design with Zend

はまた、この読み取りを与える: はここにいくつかの良い読み物へのリンクがあります

DDDの主な点は、データベーステーブルを考えることから、アプリケーションの主要な論理部分を考え、その下に永続レイヤーを追加し、その上にアプリケーションレイヤーとサービスレイヤーをゆっくり追加することです。

関連する問題