FOSRestBundle: Routen und Anmerkungen für Parameter

Ich bin in der Lage get die GET-Parameter mit @QueryParam() Anmerkung, aber es sieht aus wie es funktioniert, für die Query-String-Daten nur: /user?id=123.

Ich würde es vorziehen, es zu haben, wie /user/123 statt. Für diese, vielleicht verwende ich @Get("/user/{id}") Anmerkungen, aber ich nicht sehen, hat es zusätzliche Metadaten, die @QueryParam() hat:

name="id", requirements="\d+", default="1", description="User id"

Wenn ich die beiden Anmerkungen, bekomme ich eine Fehlermeldung:

ParamFetcher parameter conflicts with a path parameter 'id' for route 'getone'

Meine widersprüchlichen docblock:

/**
 * Finds and displays a Users entity.
 *
 * @Rest\View
 * @Rest\Get("/user/{id}")
 * @Rest\QueryParam(name="id", requirements="\d+", default="1", description="User id")
 * @ApiDoc(section="Partner Users")
 * @param int $id
 * @return array
 */

PS zu haben brauche ich eine id in den Pfad (/user/123), nicht in der Abfrage, und ich brauche auch verwenden @QueryParam() wie es gelesen NelmioApiDocBundle. Wie kann ich dieses Problem beheben?

InformationsquelleAutor Roman Newaza | 2013-11-23
Schreibe einen Kommentar