나는이에 모습을 촬영 한 :MVC, 프리젠 테이션 모델을 작성하는 가장 좋은 방법은 무엇입니까?
가에 따르면, 나는 다음과 같은 기본적인 코드가 것 : 이미 도메인 기반 디자인에서 내 응용 프로그램을 구현 한
//Instance of a Model
$model = new Model();
//Controller and View get the Model
$controller = new Controller($model);
$view = new View($model);
//Controller change/work with the Model
$controller->doSomeAction();
//Display the final Model
$view->display();
. 하지만 이제는 기존 MVC에서 구현하려는 프리젠 테이션 레이어에 갇혀 있습니다.
이//Get Model
$model = $myRepository->findById(42);
//Do Some stuff
$model->foo = 'foo';
$model->bar = 'bar';
//View
$view = new MyView($model)
$view->render();
이드 (42)는 요청에서오고 : 순간
, 내 컨트롤러는 모델의 인스턴스 (위의 코드 잘못된 것 같다) 뷰를 만들 것입니다. 하지만 어떻게 첫 번째 실제 MVC 코드에 따라 그것을 전송할 수 있습니까? 내 말은, 정적 모델이 없다는 것입니다. 모델은 요청에 의해 동적입니다.class MyPresentationModel extends PresentationModel {
public $foo;
public $bar;
public function __construct($request) {
//init myRepo...
$obj = $myRepo->findById($request->get(42));
$this->foo = $obj->getFoo();
$this->bar= $obj->getBar();
}
}
을 그래서 내 프리젠 테이션 모델을 채우기 위해 가장 좋은 방법은 무엇인가 : 모델이 요청에 대해 알고 있기 때문에이 같은
뭔가 잘못된 느낌?