Php 符合uuid要求的Symfony控制器路由
我有这样一个实体:Php 符合uuid要求的Symfony控制器路由,php,symfony,Php,Symfony,我有这样一个实体: class Building { /** * @var int * * @ORM\Column(name="id") * @ORM\Id * @ORM\GeneratedValue(strategy="UUID") * @Expose() */ private $id; .... } 我想知道是否有办法指定uuid上的要求,以便在rest API上分离两个不同的url: clas
class Building
{
/**
* @var int
*
* @ORM\Column(name="id")
* @ORM\Id
* @ORM\GeneratedValue(strategy="UUID")
* @Expose()
*/
private $id;
....
}
我想知道是否有办法指定uuid上的要求,以便在rest API上分离两个不同的url:
class BuildingController extends BaseController
{
/**
*
* @Rest\Get("/buildings/{id}", requirements={"id" = "\d+"})
*/
public function getBuildingAction($id)
{
//code
}
\d+
对于整数值是正确的,但我想将其更改为uuid类型,因为我有另一个路由,例如:
/**
* @Rest\Get("/buildings/lot")
*/
public function getBuildingLotAction(Request $request)
{
//code
}
可以在需求类型上定义uuid吗
谢谢我相信你可以简单地把“/buildings/lot”动作放在/buildings/{id}之前 我能找到的最好的例子-给出了regexp的例子,所以我想PHP regexp应该可以很好地工作
还有,,虽然没有注释示例。当然,但我想知道是否有办法在需求中声明uuid,最大的问题是/buildings/lot永远无法调用,因为所有路由buildings/继续我的getBuildingAction,因为它们对symfonyTry的声明中没有差异,这个正则表达式:/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/iI实际上不明白你的确切意思,但我想知道这是否对你有帮助。