1
的Symfony2的FOSRestBundle要求我有以下方法与注释:QueryParam
/**
* Search on players.
*
* @ApiDoc(
* output = "bbb\FrontendBundle\Entity\Player",
* statusCodes = {
* 200 = "Returned when successful",
* 404 = "Returned when no result was found"
* }
*)
*
* @Annotations\QueryParam(name="searchterm", requirements="[a-z]+", nullable=false, description="The term to search about in players.")
* @Annotations\QueryParam(name="limit", requirements="\d+", default="3", nullable=true, description="How many results to return.")
*
* @param Request $request the request object
* @param $searchterm
* @param $limit
* @return array
* @throws NotFoundHttpException when no result was found
*
* @Method("GET")
* @Route("/search", name="_api_player_search", options={"expose"=true})
*/
public function searchPlayerAction(Request $request, $searchterm, $limit)
{
}
的问题是,如果我给例如“阿龙”作为搜索关键词(api/player/search?searchterm=Aaron
)变量$搜索关键词为空。如果我尝试api/player/search?searchterm=aaron
一切工作正常。我猜问题是QueryParam注释的requirements="[a-z]+"
属性。我如何配置大写charakters也是允许的?
(与空格相同)
谢谢你的帮助!
OK不错,帮助大写charakters。例如空间呢? 谢谢你的回答! – humpdi
@humpdi所以你可以在它里面加上空格,'[a-zA-Z \ s] +' – xdazz
是的,我发现了它,它足以添加一个空格,所以它看起来像'requirements =“[a- zA-Z] +“' – humpdi