Laravel 在销毁方法上路由资源 MethodNotAllowedHttpException
Laravel Route resource MethodNotAllowedHttpException on destroy method
我正在使用资源Laravel路由,由我的routes.php中的以下行定义:
Route::resource('test', 'App\Controllers\Teacher\TestController', ['only' => ['index', 'create', 'destroy']]);
index 方法工作正常。在索引模板中,我创建了一个表单以删除列表中的一个项目。
<form method="DELETE" action="{{ URL::action('App\Controllers\Teacher\TestController@destroy', $audit->id ) }}">
<input type="submit" value="Remove" />
</form>
URL 由 Laravel 正确生成,但是 当我 post 这个表格 时,我得到以下错误:
exception 'Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException' in /var/www/project/bootstrap/compiled.php:5365
我已经尝试在我的表单的方法属性中通过 POST 更改 DELETE,但它不起作用。
我也读过这个 post 但它对我没有帮助:
当您手动创建表单时,您应该使用 POST
作为方法,并使用带有 delete
值的 _method
输入:
<form method="POST" action="{{ URL::action('App\Controllers\Teacher\TestController@destroy', $audit->id ) }}">
<input type="hidden" name="_method" value="DELETE" />
<input type="submit" value="Remove" />
</form>
试试这个:
<form action="/test" ....>
我正在使用资源Laravel路由,由我的routes.php中的以下行定义:
Route::resource('test', 'App\Controllers\Teacher\TestController', ['only' => ['index', 'create', 'destroy']]);
index 方法工作正常。在索引模板中,我创建了一个表单以删除列表中的一个项目。
<form method="DELETE" action="{{ URL::action('App\Controllers\Teacher\TestController@destroy', $audit->id ) }}">
<input type="submit" value="Remove" />
</form>
URL 由 Laravel 正确生成,但是 当我 post 这个表格 时,我得到以下错误:
exception 'Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException' in /var/www/project/bootstrap/compiled.php:5365
我已经尝试在我的表单的方法属性中通过 POST 更改 DELETE,但它不起作用。
我也读过这个 post 但它对我没有帮助:
当您手动创建表单时,您应该使用 POST
作为方法,并使用带有 delete
值的 _method
输入:
<form method="POST" action="{{ URL::action('App\Controllers\Teacher\TestController@destroy', $audit->id ) }}">
<input type="hidden" name="_method" value="DELETE" />
<input type="submit" value="Remove" />
</form>
试试这个:
<form action="/test" ....>