Symfony 2 — Как я могу получить имя текущего маршрута, используя комплект JMSI18nRoutingBundle

я использую JMSI18nRoutingBundle в проекте Symfony 2 для перевода моих маршрутов.

У меня проблема с получением текущего имени маршрута (как в шаблоне Twig, так и в контроллере Symfony) …

Я старался:

В шаблоне веточки:

{{ app.request.attributes.get('_route') }}
{{ app.request.get('_route') }}

и в контроллере:

$this->container->get('request')->get('_route')
$this->container->get('request')->attributes->get('_route')

Но ничего не получилось … Я думаю, это потому, что я использую JMSI18nRoutingBundle

Кто-нибудь может мне помочь?

2

Решение

Все в порядке, я нашел решение:

$actual_link = preg_replace('/\/app_dev.php/', '', $_SERVER['REQUEST_URI']);
$route = $this->get('router')->match($actual_link)['_route'];

Первая строка : «app_dev.php» должен быть удален, если мы находимся в режиме разработки.
Вторая линия : Сопоставьте текущий URL с маршрутизацией, чтобы найти имя текущего маршрута.

0

Другие решения

Других решений пока нет …