我有一个这样的实体:
class Building
{
/**
* @var int
*
* @ORM\Column(name="id")
* @ORM\Id
* @ORM\GeneratedValue(strategy="UUID")
* @Expose()
*/
private $id;
....
}
Run Code Online (Sandbox Code Playgroud)
我想知道是否有办法在 uuid 上指定要求以在 rest API 上分隔两个不同的 url:
class BuildingController extends BaseController
{
/**
*
* @Rest\Get("/buildings/{id}", requirements={"id" = "\d+"})
*/
public function getBuildingAction($id)
{
//code
}
Run Code Online (Sandbox Code Playgroud)
\d+ 对于整数值是正确的,但我想将它更改为 uuid 类型,因为我有另一条路线,例如:
/**
* @Rest\Get("/buildings/lot")
*/
public function getBuildingLotAction(Request $request)
{
//code
}
Run Code Online (Sandbox Code Playgroud)
是否可以在需求类型上定义 uuid?
谢谢
我相信您可以简单地将“/buildings/lot”动作放在/buildings/{id} 之前。
我能找到的最好的 -这篇文章给出了正则表达式的例子,所以我猜 PHP 正则表达式应该可以正常工作。
也提到了 Symfony expression language,尽管没有注释示例。