我不想给action controller中的viewModel添加child:
// action controller
public function indexAction() {
$result = new ViewModel();
$result->setTemplate('application/view/another-action');
$comments = new ViewModel();
$comments->setTemplate('application/view/child-comments');
$result->addChild($comments, 'child_comments');
return $result;
}
...
// View
<div>
<?php echo $this->child_comments ?>
</div>
我想在另一个视图中包含view:
<div>
<?php
$view = new ViewModel();
$view->setVariables($this->var);
$view->setTemplate('page_nav.phtml');
// here I want to render view
?>
</div>
有可能吗?
这就是Partial
视图帮助器所做的(文档似乎过时了,但我将在这里链接它们):
<div>
<?php echo $this->partial('page_nav', array('var' => $this->var)) ?>
<div>
显然,您的page_nav
应该由视图解析器知道。
我知道这是旧的,但你也可以简单地调用$this->render('path/to/view-script')