Pet*_*ete 5 symfony twig silex
我想知道如何获取当前页面名称,基本上"只是"路由中的最后一个参数(即/ news或/ about).我这样做是因为我希望能够突出显示导航中的当前页面.
理想情况下,我想将当前页面名称存储在全局变量中,以便在Twig中我可以将当前页面名称与链接进行比较并相应地添加一个类.
我无法弄清楚如何将当前页面名称添加到全局变量.我尝试过使用这样的东西:
$app['twig']->addGlobal('current_page_name', $app['request']->getRequestUri());
Run Code Online (Sandbox Code Playgroud)
在我的app.php文件的顶部,但是"请求范围之外"错误.但我不想在每条路线中都包括这一点.
最好的方法是什么?
Mae*_*lyn 16
如果你在像这样的中间件之前把它放到应用程序级别,那就行了:
$app->before(function (Request $request) use ($app) {
$app['twig']->addGlobal('current_page_name', $request->getRequestUri());
});
Run Code Online (Sandbox Code Playgroud)
您的问题的"页面名称"部分不清楚,您是否在寻找当前路线的名称?您$request->get("_route")甚至可以在之前的中间件中访问它,因为在路由已经完成时会调用它.
| 归档时间: |
|
| 查看次数: |
7236 次 |
| 最近记录: |