此路由不支持 PATCH 方法。支持的方法:GET、HEAD

The PATCH method is not supported for this route. Supported methods: GET, HEAD

<form action="{{ route('todo.edit',$todoedit->id,'edit') }}" method="POST" class="container">
        @csrf
        @method('PATCH')
        <div class="form-group">
        <label for="title">Title</label>
        <input type="text" class="form-control" name="title" value="{{$todoedit->title}}">
        </div>
        <div class="form-group">
        <label for="description">Description</label>
        <input type="text" class="form-control" name="description" value="{{$todoedit->description}}">
        </div>
        <button type="submit" class="btn btn-primary form-control">Update</button>
        </form>

待办事项控制器:

    public function edit(Request $request,$id)
    { 
        $todo=Todo::find($id);
        $todo->title=$request->title;
        $todo->description=$request->description;
        $todo->save();
        return redirect(route('todo.index'));
    }

我不知道似乎是什么问题,我正在执行 CRUD,一切正常,但更新部分不工作,它给我错误

The PATCH method is not supported for this route. Supported methods: GET, HEAD.

我什么都试过了,@method('UPDATE')PUT 什么都试过了,但都不管用

因为您在控制器的编辑方法中编写了更新函数体。做如下:

    public function update(Request $request,$id)
    { 
        $todo=Todo::find($id);
        $todo->title=$request->title;
        $todo->description=$request->description;
        $todo->save();
        return redirect(route('todo.index'));
    }

并且在您的编辑方法中只需 return 编辑视图并将 $todo 对象传递给

编辑的方法类型是:Get

更新方法类型为:Put or Patch

您可以在终端中使用简单的 运行 php artisan route:list 来查看此类型。