zend:对不同的控制器使用相同的索引?

时间:2016-08-22 16:14:58

标签: php zend-framework

我刚刚在这里学习Zend:

我有不同部门的不同控制器来显示相似但不同的信息。

我可以使用相同的索引文件吗?不同的数据是在控制器内部确定的,所以否则我只是要复制并粘贴相同的html文件......

2 个答案:

答案 0 :(得分:0)

是的,您可以重复使用模板。您可以按照自己喜欢的方式构建模板,因此在某个地方创建一个对您有意义的通用index.phtml,然后在您的控制器操作中告诉视图模型使用该模板而不是默认情况下的模板:

class ShoesController extends AbstractActionController
{
    public function indexAction()
    {
        $view = new ViewModel();
        $view->setTemplate('some/shared/index.phtml');
        return $view;
    }
}

并在PantsController中执行相同操作。

答案 1 :(得分:0)

class BazBatController extends AbstractActionController
{
    public function doSomethingCrazyAction()
    {
        $view = new ViewModel(array(
            'message' => 'Hello world',
        ));
        $view->setTemplate('foo/baz-bat/do-something-crazy');
        return $view;
    }
}

这在View Model中设置了一个“message”变量,并将模板名称设置为“foo / baz-bat / do-something-crazy”。然后返回视图模型。