Php 细枝导航正确(添加要渲染的变量)

Php 细枝导航正确(添加要渲染的变量),php,symfony,twig,Php,Symfony,Twig,我正试图使用twig在symfony工作。它没有像我预期的那样工作。我需要一个服务或另一个控制器来提供navigation.items,因此我不必在每个响应对象中都包含它。因此,如果我呈现如下: ... return $this->render('AcmeDemoBundle:Default:index.html.twig', array('title' => $slug)); } 我可以包括以下内容: {# app/src/Acme/Bundle/AcmeDemoBund

我正试图使用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>
{app/src/Acme/Bundle/AcmeDemoBundle/Resources/views/Navigation/Navigation.html.twig}
    {navigation.items%中的项的%s}
  • {%else%}
  • 菜单是空的
  • {%endfor%}

尝试实施KnpMenuBundle:

这个包裹可以满足你的任何要求


这些文档描述了一个简单的实现:

我知道它满足了我的所有要求,我只想自己做,这样我就可以学习Symfony2和Twig。