【发布时间】:2021-04-24 00:38:25
【问题描述】:
我想用 ajax 调用路由资源,当我将类型设置为删除时出现错误(异常“Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException”) 并给出消息(消息“此路由不支持 DELETE 方法。支持的方法:GET、HEAD、POST。”)。功能几乎可以正常工作,因为刷新后状态也发生了变化,但我是上述错误。
路线:
Route::resource('category', ArtistCategoryController::class);
控制器:
public function destroy($id)
{
$category = ArtistCategory::findOrFail($id);
$deleteResponse = $category->update([
'status'=>'d'
]);
if ($deleteResponse) {
deleteMessage();
return redirect()->back();
} else
errorMessage();
}
查看:
<a href="" class="categoryDelete" data-id={{ $category->id}} ><i class="far fa-trash-alt" style="color: #b21f2d"></i></a>
ajax:
<script>
$(".categoryDelete").on('click', function (e) {
e.preventDefault();
let id = $(this).data('id')
// console.log(id)
$.ajax({
url: '/artist/category/'+id,
type: 'DELETE',
data:{"id": id, "_token": "{{ csrf_token() }}"},
success: function (data)
{
alert(data)
},
error: function (e){
alert(e)
}
});
})
</script>
【问题讨论】:
标签: javascript php jquery ajax laravel