gpt4 book ai didi

php - CRUD Laravel 5如何链接到资源 Controller 的销毁?

转载 作者:IT王子 更新时间:2023-10-28 23:58:59 26 4
gpt4 key购买 nike

我有链接

<a class="trashButton" href="{{ URL::route('user.destroy',$members['id'][$i]) }}" style="cursor: pointer;"><i class="fa fa-trash-o"></i></a> 

这个链接应该指向 Usercontroller 的 destroy 方法,这是我的路由 Route::resource('/user', 'BackEnd\UsersController');

UserController 是一个资源 Controller 。但此时它正在将我引导到 show 方法而不是引导到 destroy 方法

最佳答案

您需要发送一个DELETE 请求而不是一个GET 请求。你不能用链接做到这一点,所以你必须使用 AJAX 请求或表单。

这是通用的表单方法:

<form action="{{ URL::route('user.destroy', $members['id'][$i]) }}" method="POST">
<input type="hidden" name="_method" value="DELETE">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<button>Delete User</button>
</form>

如果您使用的是 Laravel 5.1 或更高版本,那么您可以使用 Laravel 的内置助手来缩短您的代码:

<form action="{{ route('user.destroy', $members['id'][$i]) }}" method="POST">
{{ method_field('DELETE') }}
{{ csrf_field() }}
<button>Delete User</button>
</form>

如果您使用的是 Laravel 5.6 或更高版本,那么您可以使用新的 Blade 指令来进一步缩短您的代码:

<form action="{{ route('user.destroy', $members['id'][$i]) }}" method="POST">
@method('DELETE')
@csrf
<button>Delete User</button>
</form>

您可以阅读更多关于 method spoofing in Laravel here. 的信息

关于php - CRUD Laravel 5如何链接到资源 Controller 的销毁?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30299202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com