В частичном рендеринге Twig, выполняемом отдельным контроллером, я хочу проверить, соответствует ли текущий основной маршрут сравниваемому маршруту, поэтому я могу отметить элемент списка как активный.Symfony2 - получить текущий маршрут основного запроса в twig partial/subrequest
Как я могу это сделать? Попытка получить текущий маршрут в BarController нравится:
$route = $request->get('_route');
возвращается null
.
Uri
также не то, что я ищу, как вызов ниже кода в bar
«s прутик:
app.request.uri
возвращает маршрут похож на: localhost/_fragment?path=path_to_bar_route
Полный пример
Главный контроллер: FooController расширяет контроллер {
public function fooAction(){}
}
fooAction веточка:
...some stuff...
{{ render(controller('FooBundle:Bar:bar')) }}
...some stuff...
Бар контроллер:
BarController extends Controller{
public function barAction(){}
}
barAction веточка:
<ul>
<li class="{{ (item1route == currentroute) ? 'active' : ''}}">
Item 1
</li>
<li class="{{ (item2route == currentroute) ? 'active' : ''}}">
Item 2
</li>
<li class="{{ (item3route == currentroute) ? 'active' : ''}}">
Item 3
</li>
</ul>
Спасибо за редактирование, @ A.L. – pabgaran