0

我想在我的一个包(“基本”包)中创建一个导航列表,其中包含几个选项。如何允许其他捆绑包添加到该列表中?

4

1 回答 1

2

我想要一个更详细的问题,但无论如何它都在这里。

首先,检查KnpBundles中已经提供菜单功能的包。类似KnpMenuBundle的东西。看起来不错?好吧,用它。

没有什么适合你的口味?然后自己滚。我会用这样的东西:

  1. NavListManager在基本包中创建一个类,AbstractNavList并由每个其他将选项添加到导航列表的包扩展一个类。

  2. 每个包都应该提供一个NavList扩展类AbstractNavList。这些类应该提供导航列表选项。

  3. 在您的基础包中,编辑DependencyInjection\<MyBundle>Extension::load()方法以NavList使用$container->getParameter('kernel.bundles'). 将每个收集的类包含在NavListManager.

  4. 现在在模板中调用类似的东西$navman->render()来生成导航列表。

于 2012-04-12T17:58:42.547 回答