我已經採取了看看這個: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();
我已經實現我的領域驅動設計中的應用。但是現在我被卡在了presenetation層,我想在經典的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();
}
}
那麼,什麼是填補我的演講模式的最佳實踐?