2016-04-15 5 views
1

Ich frage mich, ob es eine einfache Möglichkeit ist erlaubt Methoden für über FOSRestBundle mit type: rest in routing.yml erzeugten Routen zu ändern:Set Route erlaubt Methoden mit Anmerkung, wenn FOSRestBundle mit

Zum Beispiel habe ich:

public function regularAction() 
{ 
} 

die in transformiert wird:

Name        Method  Scheme Host Path 
-------------------------------- ---------- -------- ------ ----------------------- 
pria_core_regular    GET  ANY  ANY /regular.{_format} 

kann ich den Pfad mit FOS\RestBundle\Controller\Annotations\Route\Method annotati erzeugt verändern auf:

/** 
* @Route("/test-regular") 
*/ 
public function regularAction() 
{ 
} 

Dann ist der Weg, wie ich erwartet hatte:

Name        Method  Scheme Host Path 
-------------------------------- ---------- -------- ------ ----------------------- 
pria_core_regular    GET  ANY  ANY /test-regular.{_format} 

Allerdings kann ich mit zwingenden erlaubten Methoden nicht das gleiche tun. Zum Beispiel:

@Method({"GET", "POST"}) 

Die Verwendung von @Method hat keine Wirkung. Wird dies von FOSRestBundle absichtlich deaktiviert?

+0

Hallo Martin, hast du etwas bekommen? Ich möchte dasselbe! – Drumnbass

+0

@Drumnbass no ... – martin

Antwort

0

Um die Anforderung Methoden zu setzen, klicken Sie bitte Routen wie folgt aus:

// Get Action 
public function getRegular() {} 

// Post Action 
public function postRegular() {} 

Edit: Entschuldige bitte, ich die Frage 100% nicht verstanden, mit dem Controller-Methode vorangestellt get/Post usw. wird die Methoden einstellen, siehe here

+0

Ich möchte Routenpfade nicht hartcodieren, das ist FOS's Job, ich möchte nur die Methoden ändern. – martin

+0

Ich habe meine Antwort aktualisiert – LMS94

+0

Sorry, ich war nicht sehr spezifisch, ich wollte nur Methoden ändern, ohne Pfade kopieren und einfügen. Wenn Sie @ 'Get',' @ Post' usw. verwenden, müssen Sie immer den vollständigen Pfad angeben, was ich nicht möchte. – martin