Templates zend 2:尝试在方法之间传递ViewModel
我花了一点时间试图找出如何实现子菜单栏,最终决定我真正想要的是一个小助手方法,它将我的模板附加到当前视图,而不是实际的视图助手:Templates zend 2:尝试在方法之间传递ViewModel,templates,zend-framework2,Templates,Zend Framework2,我花了一点时间试图找出如何实现子菜单栏,最终决定我真正想要的是一个小助手方法,它将我的模板附加到当前视图,而不是实际的视图助手: //To use in any action requiring the sub navbar to be displayed protected function addSubNav(ViewModel $view) { $subNavView = new ViewModel(); $subNavView->setTemplate('helpd
//To use in any action requiring the sub navbar to be displayed
protected function addSubNav(ViewModel $view) {
$subNavView = new ViewModel();
$subNavView->setTemplate('helpdesk/helpdesk/subNav');
$view->addChild($subNavView, 'subNav');
return $view;
}
但是当我在模板中的$this->subNav这样的方法中调用它时,它是空的:
public function indexAction() {
//return new ViewModel();
$this->addSubNav(new ViewModel());
}
在index.phtml中执行$this->subNav时为空,这是为什么
addSubNav()应该返回我附加了模板的视图。操作结束时,您不会返回视图模型a
public function indexAction() {
return $this->addSubNav(new ViewModel());
}
您没有在操作中返回调用helper方法的结果,它应该是
return$this->addSubNav(newviewmodel())我觉得自己很傻。我想我是在想,因为被调用的函数返回视图,它只会将其传递给调用函数,但它当然不是这样工作的。