2016-11-25 2 views
0

FOSRestBundle을 사용하고 있으며 Symfony에서 꽤 새로 왔습니다.API symfony2에서 GET 요청으로 여러 매개 변수를 전달하는 방법은 무엇입니까?

본 적이있는 일부 사례를 따라 왔지만 요청에 둘 이상의 매개 변수를 추가 할 수 없습니다. 예를

/** 
    * 
    * @param string $id Identifier 
    * @return [type]  [description] 
    * 
    * @ApiDoc() 
    */ 
    public function getProductsAction($id) 
    { 
     return myfunction($id); 
    } 

를 들어

잘 작동하지만이 같은 변화를 수행하려는 경우 :

/** 
    * 
    * @param string $id Identifier 
    * @return [type]  [description] 
    * 
    * @ApiDoc() 
    */ 
    public function getProductsAction($id, $month) 
    { 
     return myfunction($id, $month); 
    } 

이 작동하지 않습니다. $ id 만 식별합니다

알고 계신 제한 사항이 있습니까? 또는 내가했던 간단한 수정을 넘어서는 추가 구성이 필요합니까? 당신이

/** 
* 
* @param string $id Identifier 
* @return [type]  [description] 
* 
* @ApiDoc() 
*/ 
public function getProductsAction($id) 
{ 
    return myfunction($id); 
} 

을 쓸 때

답변

1

그것은 심포니가 자동 경로와 매개 변수를 매핑

use FOS\RestBundle\Controller\Annotations\Get; 

/** 
* @Get("/products/{id}") 
* @param string $id Identifier 
* @return [type]  [description] 
* 
* @ApiDoc() 
*/ 
public function getProductsAction($id) 
{ 
    return myfunction($id); 
} 

에 해당합니다.

하지만

/** 
* 
* @param string $id Identifier 
* @return [type]  [description] 
* 
* @ApiDoc() 
*/ 
public function getProductsAction($id, $month) 
{ 
    return myfunction($id, $month); 
} 

Symfoy이 $month 매개 변수를 사용하여 무엇을 해야할지하지 않습니다 쓸 때, 당신은 @get 어떤 심포니 구성 요소에서 주석이다

use FOS\RestBundle\Controller\Annotations\Get; 

/** 
* @Get("/products/{id}/{month}") 
* @param string $id Identifier 
* @return [type]  [description] 
* 
* @ApiDoc() 
*/ 
public function getProductsAction($id, $month) 
{ 
    return myfunction($id, $month); 
} 
+1

그것을 알려줄 필요가? 가져 오기 사용하지 않은 명세서가 나타납니다. –

+0

@MatheusOliveira FOSRestBundle의 주석입니다. 답변에 포함 시켰습니다. :) – lolmx

관련 문제