如何管理共享视图?

时间:2011-12-13 01:05:55

标签: model-view-controller zend-framework view module

我有一个自定义控制器类,由两个不同模块中的控制器进行扩展。他们会分享一些观点。

两个问题:

  1. 我应该在哪里放置这些共享视图?
  2. 我是否必须在每次行动结束时致电$this->render('view');或者我可以做些什么来避免这种情况?

1 个答案:

答案 0 :(得分:0)

如果控制器位于同一模块中,您可以为共享视图脚本创建专用目录,例如views中名为shared的目录。

在将使用共享视图的控制器操作中,您可以通过在控制器操作中添加它来告诉视图渲染器使用它们:

$this->_helper->viewRenderer->setRender('shared/theView', null, true);
// causes views/shared/the-view.phtml to be used instead of views/controller/action.phtml

这样您就不必手动调用渲染,然后终止处理。