2017-02-24 82 views
1

我正在使用Symfony3的FOSRestBundle(2.0)創建一個RESTFul應用程序。我有一個控制器,像這樣:FOSRestBundle-創建奇異路線

class GroupsController extends FOSRestController 
{ 
    public function getGroupAction($id) { … } 
    public function getGroupAddAction() { … } 
} 
運行 bin/console debug:router

… 
get_group   GET  ANY  ajax.localhost.dev /groups/{id} 
get_group_add  GET  ANY  ajax.localhost.dev /group/add 
… 

但是,讓一個組是針對單個項目的要求,所以路徑應該是:[GET] /group/{id},在我看來。

我錯了嗎?正確的路線,以獲得一個單一的組是複數?

因此,如果我的意見是正確的,我該如何手動更改這一條路線?我曾嘗試:

/** 
    * @NamePrefix("group") 
    */ 
    public function getGroupAction() { … } 

但是,這會導致一個錯誤,告訴我,我可以使用註釋只爲類,而不是方法。

回答

0

是的,它應該是複數。

如果你想擁有奇異路線,你可以在你的控制器中使用它。 你可以在Symfony documentation找到它。

/** 
* @RouteResource("User", pluralize=false) 
*/ 
+0

你能告訴我爲什麼它應該是複數?這不是一個單一的項目請求? – philipp

+0

其命名約定。該網址說:「從存儲庫'Groups'中給我ID'XX'」 - 不是「給我'組X」 – Roman