在另一个twig变量中执行一个twig变量

时间:2012-10-02 09:03:18

标签: symfony session-variables twig

我正在研究一个symfony2项目。在文件html.twig中,我有以下代码:{{ app.session.get('menu') | raw }},它引用会话中包含的数据库表中的字段。该字段的值为:

<div class="navbar">
<div class="navbar-inner">
<a class="brand" href="#">Menu1</a>
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="{{ path('graphe') | raw}}">Graphe</a></li>
</ul>
</div>
</div>

现在此时菜单显示完美,但是当我点击“Graphe”时,我收到错误No route found for GET /{{ path('graphe') | raw}},这意味着代码没有被执行,而是被视为字符串。 有没有其他方法可以执行。提前谢谢。

2 个答案:

答案 0 :(得分:0)

你需要的是一个类似eval的函数,因为现在,twig将变量解释为简单文本。

总结一下,你需要编写自己的过滤器来解释变量。

在此完整答案:How to call a twig filter dynamically

答案 1 :(得分:0)

在您的twig模板中嵌入一个呈现用户菜单的控制器。有关详细信息,请参阅:

http://symfony.com/doc/current/book/templating.html#embedding-controllers