child、child 的嵌套视图不会显示
nested view with child, child won't be shown
我还在学习 ZF3。我想测试嵌套视图的不同方法。首先我尝试了 partials,效果很好。
现在出于比较的原因,我想对 child-view 做同样的事情。那是行不通的。因为我之前对部分做了同样的事情,我真的确定我的模型工作得很好,所以没有问题,一定是我添加 child.
的代码
这是我的控制器操作(我将部分品种切换为切换状态):
public function showtestAction()
{
$adapter = $this->authService->getAdapter();
if(!$this->authService->hasIdentity())
{
return $this->redirect()->toRoute('index', ['action' => 'index']);
}
else {
$parameter = $this->params()->fromRoute('id');
$part =substr($parameter,0,strpos($parameter,"-"));
$dclid=substr($parameter, strripos($parameter,"-")+1, strlen($parameter));
$test3=str_replace('-'.$dclid,'',$parameter);
$unit=substr($test3, strpos ($test3,"-")+1, strripos ($test3,"-")-1);
if (!empty($parameter)) {
$view= new ViewModel([
'dcls' => $this->table->fetchPartDcl($part,$dclid),
]);
// optional $view->setTemplate('import/pcb/showtest.phtml');
$padview= new ViewModel([
'pads'=> $this->padtable->fetchPadPart($part, $unit, $dclid)
]);
$padview->setTemplate('import/pcb/showpad.phtml');
$view->addChild($padview,'pads');
return $view;
//test partial
// return new ViewModel([
// 'dcls' => $this->table->fetchPartDcl($part,$dclid),
// 'pads' => $this->padtable->fetchPadPart($part, $unit, $dclid),
// ]);
//ende test partial
}
}
}
问题是,child 不起作用,它不存在。我添加了一个h2标题来控制它。
我的 child 模板保存在:module\Import\view\child\showpad.phtml
我的错误在哪里?感谢任何帮助!
在 $view (import/pcb/showtest.phtml) 模板中添加:
echo $this->pads;
我还在学习 ZF3。我想测试嵌套视图的不同方法。首先我尝试了 partials,效果很好。
现在出于比较的原因,我想对 child-view 做同样的事情。那是行不通的。因为我之前对部分做了同样的事情,我真的确定我的模型工作得很好,所以没有问题,一定是我添加 child.
的代码这是我的控制器操作(我将部分品种切换为切换状态):
public function showtestAction()
{
$adapter = $this->authService->getAdapter();
if(!$this->authService->hasIdentity())
{
return $this->redirect()->toRoute('index', ['action' => 'index']);
}
else {
$parameter = $this->params()->fromRoute('id');
$part =substr($parameter,0,strpos($parameter,"-"));
$dclid=substr($parameter, strripos($parameter,"-")+1, strlen($parameter));
$test3=str_replace('-'.$dclid,'',$parameter);
$unit=substr($test3, strpos ($test3,"-")+1, strripos ($test3,"-")-1);
if (!empty($parameter)) {
$view= new ViewModel([
'dcls' => $this->table->fetchPartDcl($part,$dclid),
]);
// optional $view->setTemplate('import/pcb/showtest.phtml');
$padview= new ViewModel([
'pads'=> $this->padtable->fetchPadPart($part, $unit, $dclid)
]);
$padview->setTemplate('import/pcb/showpad.phtml');
$view->addChild($padview,'pads');
return $view;
//test partial
// return new ViewModel([
// 'dcls' => $this->table->fetchPartDcl($part,$dclid),
// 'pads' => $this->padtable->fetchPadPart($part, $unit, $dclid),
// ]);
//ende test partial
}
}
}
问题是,child 不起作用,它不存在。我添加了一个h2标题来控制它。
我的 child 模板保存在:module\Import\view\child\showpad.phtml
我的错误在哪里?感谢任何帮助!
在 $view (import/pcb/showtest.phtml) 模板中添加: echo $this->pads;