Symfony2,控制器中的一个操作是否可能有两条路线?

Symfony2,控制器中的一个操作是否可能有两条路线?,symfony,routes,Symfony,Routes,我的控制器类中有一个操作,我需要两个不同的路由,如下所示: /** * 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(

我的控制器类中有一个操作,我需要两个不同的路由,如下所示:

/**
 * 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\u choose\u date

具有
User
角色的用户可以访问
User\u choose\u date


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

是的,在使用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 }

我可以使用各种格式,包括注释。只要你对每条路线有不同的名称,它就应该有效。

对我有效

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


我也可以用注释来完成这项工作。谢谢