我正在使用zend开发一个应用程序,我将应用程序分成了模块。
默认模块是用户访问中未记录的主要站点,可以自由查看。登录时,根据用户类型,您可以转到模块A或模块B,它由简单的ACL控制。如果您可以访问模块A,则无法访问模块B,反之亦然。两种用户类型都可以看到默认模块。
现在我想使用Zend_Navigation来管理所有模块中的整个应用程序导航。我不知道如何解决这个问题,因为我看到的所有示例都在模块或非常简单的应用程序中工作。
我试过让我的navigation.xml文件看起来像这样:
<configdata>
<navigation>
<label>Home</label>
<controller>index</controller>
<action>index</action>
<module>default</module>
<pages>
<tour>
<label>tour</label>
<controller>tour</controller>
<action>index</action>
<module>default</module>
</tour>
<blog>
<label>blog</label>
<url>http://blog.mysite.com</url>
</blog>
<support>
<label>Support</label>
<controller>support</controller>
<action>index</action>
<module>default</module>
</support>
</pages>
</navigation>
</configdata>
这对于默认模块是否正常,但我如何将其他模块转到此导航页面?每个模块都有自己的主页,还有其他模块等。
我是否应该为我编写的用于处理ACL的preDispatch插件中加载的每个模块添加一个唯一的navigation.xml文件?或者将它们保存在一个大型导航文件中?
任何提示都很棒。
谢谢,
捐赠
答案 0 :(得分:0)
格兰特,
我通常在每个模块下创建一个config目录,并在其中放置一个navigation.xml文档。这有助于缓解交叉依赖问题。