我想从数据库中删除一行但是我收到错误。这是我的代码。如何删除?
Route::resource('x', 'xController', ['only' => [
'index', 'store', 'destroy'
]]);
<a href="{{ action('xController@destroy', $x->id) }}" class="btn btn-danger">Delete</a>
MethodNotAllowedHttpException in RouteCollection.php line 218:
答案 0 :(得分:1)
您需要使用Form Method Spoofing,
<form action="/foo/bar" method="POST">
{{ method_field('DELETE') }}
<input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>
HTML表单不支持
PUT
,PATCH
或DELETE
操作。因此,在定义从HTML表单调用的PUT
,PATCH
或DELETE
路由时,您需要向表单添加隐藏的_method
字段。使用_method
字段发送的值将用作HTTP请求方法。
答案 1 :(得分:0)
您需要使用DELETE
方法的表单,因为您正在使用资源控制器。
<form method="POST" action="{{ action('xController@destroy', $x->id) }}">
{{ method_field('DELETE') }}
{{ csrf_field() }}
<input type="submit" value="Delete" class="btn btn-danger">
</form>