0

是否可以从视图脚本中获取当前模块/控制器/操作名称?我该怎么做?

4

1 回答 1

0

您可以使用 MvcEvent 对象在控制器中检索它,然后将其分配给 ViewModel,以便您可以在视图中检索它:

public function indexAction()
{
   return new ViewModel(
            array(
                'controller' => $this->getEvent()->getRouteMatch()->getParam('controller'),
                'action' => $this->getEvent()->getRouteMatch()->getParam('action')
            )
        );
}

模块名称有点棘手,但您可以例如使用NAMESPACE获取它,或者只是从控制器名称中解析它。

如果您想在多个视图中使用它,那么创建和注册您自己的视图助手可能会更好。

于 2013-04-12T01:21:15.010 回答