2
刚刚陈述了一周前的zend2,并且对框架环境有所了解。在一个页面中显示多个表格
使用zend2教程,我创建了不同的表单,但现在我需要的是在一个页面中显示三种表单。
报告/添加 公司/加 用户/使用自己的视图文件
输出三种不同的形式。但我需要其中三个单页。
我尝试了很多搜索,但没有找到相关结果。问题可能重复,如果有的话请放下参考。
刚刚陈述了一周前的zend2,并且对框架环境有所了解。在一个页面中显示多个表格
使用zend2教程,我创建了不同的表单,但现在我需要的是在一个页面中显示三种表单。
报告/添加 公司/加 用户/使用自己的视图文件
输出三种不同的形式。但我需要其中三个单页。
我尝试了很多搜索,但没有找到相关结果。问题可能重复,如果有的话请放下参考。
你会对\Zend\View\Helper\Partial
感兴趣。这个ViewHelper
允许你在当前的视图中渲染不同的视图文件。让我们假设你的场景中有某种仪表板可以呈现多种形式。
form_one.phtml
$form = $this->form;
//render your Form
form_two.phtml
$form = $this->form;
//render your Form
到目前为止好,也没什么特别的在这里。让我们快速迂回到您DashboardController
或者说具体的dashboardAction()
public function dashboardAction()
{
$formOne = new FormOne();
$formTwo = new FormTwo();
return array(
'form_one' => $formOne,
'form_two' => $formTwo
);
}
采用这种设置,变量form_one
和form_two
将提供您dashboard.phtml
dashboard.phtml内
<h2>FormOne</h2>
<?=$this->partial('form_one.phtml', array('form' => $this->form_one));?>
<h2>FormTwo</h2>
<?=$this->partial('form_two.phtml', array('form' => $this->form_two));?>
通过此设置,您可以将特定呈现视图文件所知的每个表单设为form
或用更少的魔力$this->form
感谢山姆,它的工作。你的教程很棒。对于初学者来说,它们实际上是很棒的帮 – 2013-04-08 13:39:07
你也可以使用视图模型嵌套,看看[这里](http://stackoverflow.com/questions/15342330/zend-framework-2-two-templates-in-one-layout/15361266#15361266)看到如何做到这一点。 – 2013-04-09 13:56:07