この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:2
ページ更新者:guest
更新日時:2018-05-10 14:30:59

タイトル: MethodNotAllowedHttpException

エラー内容

Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException

 

発生条件/原因

httpリクエスト時に発生する。

ルーティングに該当するURLが存在しない。

 

対処法

大抵はクライアント側の<form method="POST" ...>をGETにしていたりするケースが多い。

DELETE, PUTの場合はmethodはPOSTでformタグ内に{{ method_field('PUT') }}もしくはDELETEと記載すればよい。
 

また、Controller内でリダイレクトして他のControllerを起動させる場合は最終的にGETリクエスト扱いになるので、要注意。

※つまり、入力画面がそもそもPOST等で表示させる画面である場合、入力エラーがでその画面に戻るときはGETでしか戻れないので、入力画面はGETで表示させるようにする必要がある。

※上記の入力画面がGETしか許容しない問題に解決策がある場合は追記もしくは修正をお願いします。