laravel - Laravel 中删除返回 404 Not Found 并没有删除

标签 laravel

我正在尝试删除 Laravel 中的类别

在我的 Controller 中我有这个

public function destroy(Category $category)
{
    $category->delete();

    return redirect()->back()
    ->with('success','Category deleted successfully');
}

我也尝试在我的 Controller 中执行此操作

public function destroy($id)
{
    Category::destroy($id);
      return redirect()->back()
    ->with('success','Category deleted successfully');
}

在我看来,我有这个

<div class="card card-default">
<div class="card-header">Category</div>  
<div class="card-body">
<table class="table">
        <thead>
           <th>Name</th>
        </thead>
        <tbody>
            @foreach($categories as $category)
            <tr>
                <td> {{ $category -> title }} </td>
                <td>  
                <form action="admin/category/{{category->id}}" method="POST">
                {{ method_field('DELETE') }}
                @csrf
                <input type="hidden" name="_method" value="DELETE">        
                    <button type="submit" class="btn btn-danger">Delete</button>
                </form>
                </td>
            </tr>
            @endforeach
        </tbody>
</table>

在我的 web.php 中,我有这个

Route::delete('/admin/category/{category},'CategoriesController@destroy');

它不断将我重定向到

404 Not Found

并且它没有删除 拜托,我不知道我做错了什么

最佳答案

这是因为您的表单操作正在呈现错误的网址,而您的 web.php 文件中没有该网址。呈现的网址类似于 http://127.0.0.1:8000/admin/category/%7Bcategory-%3Eid%7D 因为您使用的是 {category->id} 而不是类别变量。

表单操作应该是这样的

<form action="admin/category/{{$category->id}}" method="POST">

更好的方法是使用命名路由

Route::delete('admin/category/{category}','CategoriesController@destroy')->name('category.destroy');

和表单操作

<form action="{{ route('category.destroy',$category->id) }}" method="POST">

关于laravel - Laravel 中删除返回 404 Not Found 并没有删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59441629/

相关文章:

php - 使用查询生成器的 Laravel 5 分页

jquery - ajax调用成功后如何显示侧边栏

php - 获取与 Eloquent Laravel 的 hasMany 关系

laravel - 任务调度 未找到命令 'app',但类似的有16个

mysql - 优化数据库更新

php - MySQL 查询获取类别和子项

php - Laravel+Plupload 上传到 S3 的预检响应无效 - CORS

php - 是否可以将路由参数传递给 Laravel 中的 Controller 构造函数?

laravel - 与环境关联的一个或多个 TargetGroups 处于降低的健康状态

laravel - Composer 无法在伊朗下载和安装软件包