Viewをオブジェクトに渡す必要があるのか、配列だけを受け取るのか不思議です。私はORMフレームワークを使用しています。したがって、プロジェクトビューページでは、プロジェクトオブジェクトのビューを渡して、プロジェクトのtodoListsとtodosをレンダリングさせることができます。MVC:オブジェクトの代わりに常にビューを表示する必要がありますか?
だから、現在、私の見解で私のようなコードを持っている:
foreach ($this->project->getTodoLists() as $todoList) {
// render lists
foreach ($todoList->getTodos() as $todo) {
// render todos
}
}
は、このOKですか?私はdoctrineの怠惰な読み込みで、get*()
が呼び出されたときにSQLを実行すると思います。それはここで重要ですか?
または私のコントローラで、必要な情報をすべて純粋な配列に解析する必要がありますか?
私はPHP、Zend Framework 1.11、Doctrine 2 ORMを使用しています。しかし、私の意見で私が使用しているものは本当に問題ではありません。
これらのクエリを遅延読み込みしている場合は、ビューまたはヘルパー関数でそのクエリを使用すると、HTMLをキャッシュし、キャッシュをリフレッシュする必要があるときにのみそのクエリを実行できます。 – scragz
[実際のMVC](http://stackoverflow.com/questions/1549857/simple-php-mvc-framework/1549970#1549970)のパラダイムでは、ビューは実際にモデルと通信します。あなたの例は、PMVCまたはMVPの典型的なPHPフレームワークの変形です。この場合、あなたは望むようにすることができます。しかし、オブジェクトはしばしば読みやすくなります。 – mario