dqqs64238 2017-07-17 07:57
浏览 60
已采纳

符合uuid要求的Symfony控制器路由

I have an entity like this:

class Building
{
    /**
     * @var int
     *
     * @ORM\Column(name="id")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="UUID")
     * @Expose()
     */
    private $id;

    ....
}

I would like to know if there is a way to specify the requirements on uuid to separate two different url like this on rest API:

class BuildingController extends BaseController
{   
    /**
     *
     * @Rest\Get("/buildings/{id}", requirements={"id" = "\d+"})
     */
    public function getBuildingAction($id)
    {
        //code
    }

\d+ is correct for integer value but I would like to change It to uuid type because I have another route for example this:

 /**
 * @Rest\Get("/buildings/lot")
 */
public function getBuildingLotAction(Request $request)
{
    //code
}

Is possible to define uuid on requirements type?

Thanks

  • 写回答

1条回答 默认 最新

  • dsgoj7457 2017-07-17 08:29
    关注

    I believe you can simply put "/buildings/lot" action before /buildings/{id}.

    First route always win.

    Best I could find - this article gives example of regexp, so I guess PHP regexps should work fine.

    There is also mention of Symfony expression language, though without example for annotations.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥18 深度学习tensorflow1,ssdv1,coco数据集训练一个模型
  • ¥100 关于注册表摄像头和麦克风的问题
  • ¥30 代码本地运行正常,但是TOMCAT部署时闪退
  • ¥15 关于#python#的问题
  • ¥15 主机可以ping通路由器但是连不上网怎么办
  • ¥15 数据库一张以时间排好序的表中,找出多次相邻的那些行
  • ¥50 关于DynamoRIO处理多线程程序时候的问题
  • ¥15 kubeadm部署k8s出错
  • ¥15 Abaqus打不开cae文件怎么办?
  • ¥15 小程序准备上线,软件开发公司需要提供哪些资料给甲方