Динамический целевой путь по умолчанию в Symfony2
Я разрабатываю приложение с помощью Symfony2 и FOSUserBundle.
Когда пользователь входит в систему, я хочу перенаправить их на /пользователь/имя пользователя, имя пользователя, очевидно, меняется с каждым пользователем.
Одним из вариантов Security.yml является default_target_path. Можно ли установить default_target_path в динамический путь, или мне нужно переопределить класс FOSUB для входа в систему.
2 answers
Перезаписать Защищенный контроллер и Шаблон. В контроллере, когда пользователь входит в систему, создайте переменную и передайте ее своему шаблону
<input type="hidden" name="_target_path" value="{{redirect_url}}" />
Приведенный выше ответ неверен, вам необходимо зарегистрировать службу как success_handler для вашего брандмауэра, реализующего интерфейс authenticationsuccesshandlerинтерфейс (вы можете имитировать DefaultAuthenticationSuccessHandler)
Правильный ответ здесь: Symfony2 расширяет обработчик успешности проверки подлинности по умолчанию