我试图使用twig在symfony中使用导航。它没有像我预期的那样工作。我想要一个服务或另一个控制器来提供navigation.items,所以我不必将它包含在每个响应对象中。所以,如果我这样渲染:
...
return $this->render('AcmeDemoBundle:Default:index.html.twig', array('title' => $slug));
}
我可以包含这个:
{# app/src/Acme/Bundle/AcmeDemoBundle/Resources/views/Navigation/navigation.html.twig #}
<nav>
<ul>
{% for item in navigation.items %}
<li>
<a href="{{ url(item.action) }}">{{ item.title }}</a>
</li>
{% else %}
<li>The menu is empty.</li>
{% endfor %}
</ul>
</nav>
答案 0 :(得分:0)
尝试实施KnpMenuBundle:https://github.com/KnpLabs/KnpMenuBundle
此捆绑包可以处理您提出的所有问题。
文档描述了一个简单的实现:https://github.com/KnpLabs/KnpMenuBundle/blob/master/Resources/doc/index.md