ViewModel
「一般的な」アプリケーションでは、コントローラーはオブジェクト内のデータをビューに転送します。そこで、出力用に準備することができます。
`id` -> `/foo/bar/` . `$course->id` -> `link`
`firstname` and `lastname` -> `$course->name` -> `name`
`date` -> `AgeHelper(`$course->date`)` . ' years old.' -> `age`
etc. ...
現在、RESTful アプリケーションを開発していて、このビュー レベルがありません。現在、次のように機能しています。
コントローラ
public function get($id)
{
$course = $this->getCourseTable()->findOnceByID($id)->current();
$viewModel = $this->acceptableViewModelSelector($this->acceptCriteria);
$viewModel->setVariables(array('data' => array(
'id' => $course->id,
'created_at' => $course->created_at,
'details' => $course->details,
)));
return $viewModel;
}
しかし、それは浅いデータ構造に対してのみ十分です。のためにデータをどこで処理/準備する必要がありViewModel
ますか?
- コントローラ?いいえ、コントローラーにはありません。
- モデル?モデル テーブルまたはマッパー クラスにありません。
- 意見?いいでしょうが、景色はありません。
それで、どこ?
ありがとう