在laravel 中提交表单时,我将获得MethodNotAllowedHttpException
HTML文件
<form action="{{ action('HomeController@store') }}" method="post">
<input name="_method" type="hidden" value="PATCH">
<input name="_token" type="hidden" value="{{ csrf_token() }}"/>
<input type="submit" name="Submit" value="submit">
</form>
我是我的routes.php
Route::post('formaction','HomeController@store')
Controller.php
<?php
namespace App'Http'Controllers;
use Illuminate'Http'Request;
use App'Http'Requests;
use App'Http'Controllers'Controller;
class HomeController extends Controller
{
public function store(){
echo 'form submitted';
}
}
为什么我会在表单操作页面中得到MethodNotAllowedHttpException?我参考了一些与此相关的问题,但没有任何帮助
即使表单使用POST方法,您也会发送额外的参数_method
,这将使框架知道您要使用该方法。如果你发送了额外的参数,那么你应该相应地设置路线:
Route::patch('formaction','HomeController@store');