0

我想在我在 yml 中使用的路由上添加参数,例如在 security.yml

firewalls:
    main:
        pattern: ^/
        form_login:
            provider: fos_userbundle
            csrf_provider: form.csrf_provider
            login_path: project_main_homepage
            default_target_path: project_user_profile
            failure_path: project_main_homepage

如果我登录失败,我将被重定向到 project_main_homepage ( http://www.mywebsite.com ) 但例如我想被重定向到http://www.mywebsite.com?user=0 是否有解决方案要做到这一点 ?

谢谢

4

2 回答 2

1

我认为不可能直接在 security.yml 文件中添加 URL 获取参数,但这完全可以通过创建身份验证处理程序来创建,您可以在其中创建自己的 RedirectResponse 到您选择的路由(带参数)。查看这篇关于在 symfony 中创建身份验证处理程序的文章。

另一种选择是创建第二个路由,该路由具有 URL 参数以重定向到相同的操作,但不确定这是否适合您的需求,因为它将是不同的 URL。

于 2013-10-19T22:13:41.240 回答
0

您是否尝试在 /app/config/parameters.yml 中添加参数并在 routing.yml 和由 % 包围的 security.yml 中使用它们?

例如:

app/config/parameters.yml  
your_param: xxx

app/config/routing.yml
your_route:  
    pattern:  /%your_param%/{_locale}  
    defaults: { _controller: YourBundle:Main:index }
于 2013-11-12T19:32:22.407 回答