FOS REST Bundle:有趣的东西 "persons" 资源
FOS REST Bundle: funny thing with a "persons" resource
我正在使用 FOS Rest 包为 "persons" 资源创建 REST 资源,基本上 urls 应该是:
- 列表:GET /api/persons
- 添加:POST/api/persons
- 获取单身人士:GET /api/persons/{id}
- 修改:PUT /api/persons/{id}
- 删除:删除/api/persons/{id}
所以我在控制器中定义了我的方法如下:
public function cgetPersonsAction() # List
public function cgetPersonAction(...) # Get single
public function cdeletePersonAction(...) # Delete
#etc...
有趣的部分来了,而不是 /api/persons 获取单数、放置、post 和删除 FOS Rest bundle 将 person 的复数计算为 people 而不是 persons 和 urls 最终是:
- 列表:GET /api/persons
- 添加:POST/api/people
- 获取单身人士:GET /api/people/{id}
- 修改:PUT /api/people/{id}
- 删除:删除/api/people/{id}
我搜索了代码,在捆绑包中寻找一些 people/person,但我什么也没找到,所以我猜它一定与一些 php 复数函数有关。
你知道有什么方法可以强制 url 保持 "person" 吗?我认为这里的人没有太多意义
您可以使用以下方式强制 url:
FOS\RestBundle\Controller\Annotations\Get; ...\Post; ,...
对于 GET url 它将是:
@Get("api/whatever/{id}")
我正在使用 FOS Rest 包为 "persons" 资源创建 REST 资源,基本上 urls 应该是:
- 列表:GET /api/persons
- 添加:POST/api/persons
- 获取单身人士:GET /api/persons/{id}
- 修改:PUT /api/persons/{id}
- 删除:删除/api/persons/{id}
所以我在控制器中定义了我的方法如下:
public function cgetPersonsAction() # List
public function cgetPersonAction(...) # Get single
public function cdeletePersonAction(...) # Delete
#etc...
有趣的部分来了,而不是 /api/persons 获取单数、放置、post 和删除 FOS Rest bundle 将 person 的复数计算为 people 而不是 persons 和 urls 最终是:
- 列表:GET /api/persons
- 添加:POST/api/people
- 获取单身人士:GET /api/people/{id}
- 修改:PUT /api/people/{id}
- 删除:删除/api/people/{id}
我搜索了代码,在捆绑包中寻找一些 people/person,但我什么也没找到,所以我猜它一定与一些 php 复数函数有关。
你知道有什么方法可以强制 url 保持 "person" 吗?我认为这里的人没有太多意义
您可以使用以下方式强制 url:
FOS\RestBundle\Controller\Annotations\Get; ...\Post; ,...
对于 GET url 它将是:
@Get("api/whatever/{id}")