Zend Navigation - Url配置问题

时间:2010-09-26 08:12:53

标签: php zend-framework module zend-navigation

我将导航内容存储在项目的configs文件夹中的navigation.xml文件中。

基本上我有两个模块,默认模块可以处理例如:身份验证和基本页面使用以及管理模块来管理网站。

当我以管理员身份登录时,根据我的acl和navigation.xml显示一个特殊的管理导航,导航元素如下所示:

<ticket>
    <label>Tickets</label>
    <resource>admin:ticket</resource>
    <module>admin</module>
    <controller>ticket</controller>
    <action>payticket</action>
    <privilege>ticket</privilege>
</ticket>   

但是当我以管理员身份登录时,我的网站网址存在很大问题。我很晚才开发了我的管理模块,所以默认模块的url看起来像这样:

$this->url(array('controller' => 'index', 'action' => 'contact'))

所以我遗漏了'module'=&gt; 'default'因为我不希望 / default / 出现在浏览器的url栏中。

当我访问管理网站时,例如mysite.de/admin/ticket,我页面上的所有网址,通常会指向默认模块,现在指向管理模块,当我访问它时,我收到了一个错误的请求。

$this->url(array('controller' => 'index', 'action' => 'contact'))

通常创建mysite.de/index/contact但在管理页面上它变成了mysite.de/admin/index/contact。

我是否必须调整所有链接并添加模块信息,还是有其他解决方案?

1 个答案:

答案 0 :(得分:1)

如果您将默认设置为模型,Zend将不会将其包含在您的URL中,因为它是默认模块。

例如,包括以下内容: - 控制器:索引 - 行动:指数 - module:default

将导致只有/.

的网址