【问题标题】:Symfony2, Is it possible to have two route for one action in a controller?Symfony2,控制器中的一个动作是否可以有两条路线?
【发布时间】:2012-06-20 20:11:30
【问题描述】:

我的控制器类中有一个动作,我想要两条不同的路线,如下所示:

/**
 * Displays a form to create a new entity.
 *
 * @Route("/edit/choose/date", name="user_choose_date")
 * @Route("/supervisory/choose/date", name="sup_choose_date")
 * @Template()
 */
public function chooseDateAction()
{
    return array( );
}

我想将路由访问权限授予某些用户但用户角色不同的原因。

假设:

具有supervisor 角色的用户可以访问sup_choose_date

具有user 角色的用户可以访问user_choose_date

问题是一个动作是否可以有两条不同的路线?或者我复制了不同路线的代码?

【问题讨论】:

    标签: symfony routes


    【解决方案1】:

    是的,在使用 YAML(或 XML)路由时是可能的。

    例子:

    sup_choose_date:
        pattern:   /supervisory/choose/date
        defaults:  { _controller: MyBundle:Default:chooseDate }
    
    user_choose_date:
        pattern:   /edit/choose/date
        defaults:  { _controller: MyBundle:Default:chooseDate }
    

    【讨论】:

    • 我也可以通过注释来做到这一点。谢谢。
    【解决方案2】:

    为我工作!

    您必须设置不同的名称;如果没有,请明确指定

    【讨论】:

      【解决方案3】:

      我可以使用包括注释在内的各种格式。只要您为每条路线使用不同的名称,它就应该可以工作。

      【讨论】:

        猜你喜欢
        • 2016-07-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-19
        相关资源
        最近更新 更多