Symfony2 эквивалент before_filter? - PullRequest
1 голос
/ 31 марта 2012

Просто интересно, есть ли у Symfony2 эквивалент before_filter от Rails?Я хочу изменить макет моего приложения в зависимости от типа пользователя, который его просматривает.Большое спасибо.

РЕДАКТИРОВАТЬ: Я должен уточнить мой вопрос.Я хочу изменить макет моего приложения на основе параметра URL.Таким образом, в конечном итоге все, что нужно для эквивалента before_filter, - это сделать каждый шаблон, отображаемый контроллером, наследуемым от другого базового шаблона, основанного на этом параметре URL.Я должен добавить, что у меня уже есть более 50 действий контроллера, которые отображают шаблоны, поэтому в идеале решение должно быть чем-то таким, что легко включить в приложении без необходимости редактировать каждое действие контроллера.

Ответы [ 2 ]

0 голосов
/ 31 марта 2012

Близким эквивалентом будет создание kernel.view прослушивателя событий. Вы также можете взглянуть на LiipThemeBundle , чтобы изменить макет на лету.

0 голосов
/ 31 марта 2012

Я не знаю эту функцию, но вы можете попробовать {% if is_granted('ROLE_XXX') %} в шаблонах веточек или $this->get('security.context')->isGranted('ROLE_ADMIN') в контроллере

Вы найдете больше информации в http://symfony.com/doc/current/book/security.html.

Надеюсь, это поможет.

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