подзапрос Symfony / встроенный контроллер, как установить правильную локаль

1

Я попытался отделить некоторые из моих компонентов (например, nav bar) на основе этой статьи поваренной книги. Тем не менее, мне трудно установить языковой стандарт. В этом примере контроллер не имеет маршрута. Я думаю, что так оно и должно быть, потому что только на навигационном баре не должно быть маршрута. Тем не менее, локаль подзадачи затем устанавливается в значение по умолчанию "en" в моем случае. Самое забавное, что компонент-переводчик все еще работает, т.е. Получает правильные строки. Однако мои пользовательские сервисы, которые используют инъекцию setter для получения текущей локали из текущего запроса, теперь всегда используют локаль по умолчанию, пока выполняется подзапрос.

Каков правильный способ заставить это работать? Как компонент трансляции Symfony получает текущую локаль?

РЕДАКТИРОВАТЬ

По-видимому, компонент переводчика устанавливает только локаль для самого внешнего запроса. Как только его набор, его набор. Я должен, вероятно, так же.

Теги:

1 ответ

0

вы просто передаете текущий запрос, чтобы он передавал параметры, такие как _local,...

Exemple:

{% render "MyBundle:Controller:someAction" with { 'originalRequest' : app.request } %}


public function someAction(Request $originalRequest)
{
    // do something
}

Ещё вопросы

Сообщество Overcoder
Наверх
Меню