我没有使用资源 Controller 。
路线:
Route::delete('/deleteTag/{tag}','Controller2@deleteTag');
Controller 函数:
public function deleteTag(Tag $tag){
$Tag = Tag::where('id', $tag->id)->get()->first();
$Tag->delete();
return redirect()->action('Controller2@main');
}
电话:
<form method="delete" action="http://***/public/deleteTag/{{$tag->id}}">
{!! Form::token() !!}
<button type="submit">delete</button>
</form>
程序返回 MethodNotAllowedHttpException。
谢谢。
最佳答案
你可以试试这个(注意隐藏的 _method
输入):
<form method="post" action="http://***/public/deleteTag/{{$tag->id}}">
{!! Form::token() !!}
<input type="hidden" name="_method" value="DELETE">
<button type="submit">delete</button>
</form>
检查 Form Method Spoofing .
更新:
在最新版本的 Laravel 中,可以在表单中为 csrf
和 method
使用 blade 指令,例如:
<form method="post" action="...">
@csrf
@method('DELETE')
<button type="submit">delete</button>
</form>
关于php - 如何使用 Laravel 发出删除请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44888433/