Symfony2:FOSRest:允许路由“/api/items”和"api/items/{id}"
Symfony2: FOSRest: Allow route for both "/api/items" and "api/items/{id}"
所以,我正在尝试使用 Symfony2 和 FOSRestBundle 创建一个简单的 REST api。
进行得非常顺利,但是我遇到了障碍,Google 显然无法回答 :)
我的理解是:
public function getUsersAction(){
return 'A list of all the users';
}
将创建这样的路线:
api_get_users GET ANY ANY /api/users.{_format}
我知道添加一个函数参数:
public function getUsersAction($id){
return 'A specific users (with $id) details';
}
将创建这样的路线:
api_get_users GET ANY ANY /api/users/{userid}.{_format}
但是,如果我想实现它怎么办,以便两条路线都可用(就像适当的 REST api 设计)?
我试过做类似
的事情
public function getUsersAction($userid = NULL){
但它没有用(不足为奇)..
我很确定我漏掉了一块简单的拼图,但我不知道是什么。
创建 getUserAction($id)
和 getUsersAction()
(不是复数)应该可行
class UserController implements ClassResourceInterface
{
// ...
public function getUsersAction()
{} // "get_users" [GET] /users
public function getUserAction($slug)
{} // "get_user" [GET] /users/{slug}
// or when omittig "User":
public function cgetAction()
{} // "get_users" [GET] /users
public function getAction($slug)
{} // "get_user" [GET] /users/{slug}
// ...
}
所以,我正在尝试使用 Symfony2 和 FOSRestBundle 创建一个简单的 REST api。
进行得非常顺利,但是我遇到了障碍,Google 显然无法回答 :)
我的理解是:
public function getUsersAction(){
return 'A list of all the users';
}
将创建这样的路线:
api_get_users GET ANY ANY /api/users.{_format}
我知道添加一个函数参数:
public function getUsersAction($id){
return 'A specific users (with $id) details';
}
将创建这样的路线:
api_get_users GET ANY ANY /api/users/{userid}.{_format}
但是,如果我想实现它怎么办,以便两条路线都可用(就像适当的 REST api 设计)?
我试过做类似
的事情public function getUsersAction($userid = NULL){
但它没有用(不足为奇)..
我很确定我漏掉了一块简单的拼图,但我不知道是什么。
getUserAction($id)
和 getUsersAction()
(不是复数)应该可行
class UserController implements ClassResourceInterface { // ... public function getUsersAction() {} // "get_users" [GET] /users public function getUserAction($slug) {} // "get_user" [GET] /users/{slug} // or when omittig "User": public function cgetAction() {} // "get_users" [GET] /users public function getAction($slug) {} // "get_user" [GET] /users/{slug} // ... }