2017-03-06 8 views

答えて

0

コントローラで2つの異なるメソッドを作成し、ルーティングを通じてGETまたはPOST要求の処理方法を決定できます。以下の両方のルートは同じですが、リクエストメソッドを制限しています。ルートの名前は異なる必要があります

/** 
* This method accepts on GET or PUT 
* @Route("/view/{id}", name="blueprint_view") 
* @Method({"GET", "PUT"}) 
*/ 
public function viewAction(Request $request, $id) 
{ 
    .... 
} 


/** 
* The method accepts POST 
* 
* @Route("/view/{id}", name="blueprint_post_view") 
* @Method({"POST"}) 
*/ 
public function viewPostAction(Request $request, $id) 
{ 
    .... 
} 

ここで、どのように期待されているのか、要求パラメータを解析する方法を知ることができます。

+0

私はそれがうまくいくとは思わない - symfonyフォームは、どのメソッドを使うかを決定するオプション "method"を持っています。そのため、handleRequestはGETとPOSTの両方を持っていません。 –

+0

これは両方を処理できます。ドキュメントを確認してください。 symfonyがGETを処理できなかった場合に、フォームがそのメソッドを設定できる理由は他にありますか? – pogeybait

+0

明確にするために、別の質問への回答を参照してください。 http://stackoverflow.com/questions/19308945/symfony-2-basic-get-form-generated-url – pogeybait

関連する問題