Symfony2: где разместить код для всех маршрутов? - PullRequest
2 голосов
/ 23 марта 2012

Мне нужно запустить какой-нибудь код, например, чтобы определить языки, предпочитаемые браузером, и соответственно установить локаль с доступными языками в моем приложении и другими подобными вещами. Этот код будет жить в моем собственном ядре.

Мне интересно, где лучшее место для такого рода кода, скажем, какое-то действие контроллера, которое должно выполняться перед любым другим.

Я полагаю, что включение одного и того же файла в app.php и app_dev.php - плохой обходной путь, особенно при обновлении Symfony.

Я не могу найти никакого ответа ни в документации, ни в Интернете.

Ответы [ 2 ]

5 голосов
/ 23 марта 2012

Создать прослушиватель для события .В большинстве случаев kernel.request - это то, что вам нужно слушать.Я помещаю классы слушателя в пространство имен Listener пакета.

0 голосов
/ 07 мая 2012

Но будьте осторожны - в соответствии с документами Sf2 (по вашей ссылке):

В любое время при обработке запроса («основного») может быть обработан подзапрос,Вы можете передать тип запроса методу handle() (его второй аргумент) ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...