参数在yml Symfony2中的路由

时间:2013-10-19 21:21:48

标签: php symfony routing

我想在我在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 有没有解决办法呢?

由于

2 个答案:

答案 0 :(得分:1)

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

的文章

另一种方法是创建第二个路由,该路由具有重定向到同一操作的URL参数,不确定是否符合您的需要,因为它将是不同的URL。

答案 1 :(得分: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 }