将页面映射到特定操作+ param组合是否可行,如下所示:
<myprofile>
<label>My Profile</label>
<controller>user</controller>
<action>profile</action>
<visible>1</visible>
</myprofile>
<othersprofile>
<label>User Profile</label>
<controller>usuario</controller>
<action>perfil</action>
<visible>0</visible>
<reset_params>0</reset_params>
<params>
<id>*</id>
</params>
</othersprofile>
我想如果uri包含任何id param,那么它应该是活动的。 (我把*作为通配符,但我不知道这样做的正确方法)
/ user / profile =应将myprofile设置为活动状态 / user / profile / id / 5 =应将othersprofile设置为活动
任何帮助表示感谢。
由于
答案 0 :(得分:0)
通过在操作中明确将页面设置为活动状态,有一种解决方法。
你可以这样做:
public function perfilAction(){
$this->view->navigation()->findOneBy('controller','usario')->setActive();
// rest of your action code...
从ZF 1.11.8开始,您应该只能在页面参数中添加路径名称,并且对于与此路线匹配的任何内容,它都将处于活动状态。 (之前已添加“路由”功能,但isActive检测存在一些问题,请参阅http://framework.zend.com/issues/browse/ZF-11359)