我可以弄清楚为什么我没有访问我的破坏方法。 叶片:
@foreach($advertisements as $advertisement)
<form class="form-horizontal" method="delete" action="advertisements/{{ $advertisement->id }}" accept-charset="UTF-8">
<div class="form-group">
<h2> {{ $advertisement->title }}</h2>
{{$advertisement->city}} {{ $advertisement->type }}
<input class="btn-danger" type="submit" value="Delete add">
</div>
</form>
控制器:
public function destroy($advertisements)
{
Advertisement::find($advertisements)->delete();
return redirect('advertisements');
}
路线:列表 |删除|广告/ {广告} | advertisements.destroy | App \ Http \ Controllers \ AdvertisementsController @ destroy
答案 0 :(得分:0)
来自官方laravel docs,
HTML表单不支持PUT,PATCH或DELETE操作。因此,在定义从HTML表单调用的PUT,PATCH或DELETE路由时,您需要向表单添加隐藏的_method字段。使用_method字段发送的值将用作HTTP请求方法:
您应该更新表单标记并添加隐藏的输入字段_method:
<form class="form-horizontal" method="POST" action="advertisements/{{ $advertisement->id }}" accept-charset="UTF-8">
<input type="hidden" name="_method" value="DELETE">