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

标签 php laravel laravel-5

我有链接

<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/

相关文章:

javascript - 模态未更新

php - Route.php 中的 ReflectionException 第 335 行 : Function () does not exist

php - 使用 Laravel 从 API 获取 JSON 响应

php - 我的 Doctrine 实体应该实现接口(interface)吗?

php - 如何从多个表中获取按时间排序的最后 30 个项目?

php - CakePHP URL 重写在 Ubuntu 上不起作用

java - 如何在 PHP 中解码 Java 流

php - 拉维尔 5.1 : Register user and send data to two tables at the same time: Users and Users_details

php - 方法 [validateRequire] 不存在

Laravel Carbon,用工作日检索今天的日期?