【问题标题】:BadMethodCallException Method App\Http\Controllers\TaskController::destory does not existBadMethodCallException 方法 App\Http\Controllers\TaskController::destory 不存在
【发布时间】:2019-10-28 11:18:13
【问题描述】:

我使用的是 laravel 5.8,这是我的 routes/api.php 文件。

Route::get('/tasks', 'TaskController@index')->name('tasks.index');
Route::post('/tasks', 'TaskController@store')->name('tasks.store');
Route::get('/tasks/{task}', 'TaskController@show')->name('tasks.show');
Route::put('/tasks/{task}', 'TaskController@update')->name('tasks.update');
Route::delete('/tasks/{task}', 'TaskController@destory')->name('tasks.destroy');

这是TaskController中的函数destroy(),

public function destroy(Task $task)
{
    $task->delete();

    return response()->json([
        'message' => 'Successfully deleted task!'
    ]);
}

但是当我调用这个函数时,我得到了这个错误,

BadMethodCallException 方法 App\Http\Controllers\TaskController::destory 不存在。

如果有人能提供帮助,那就太好了。

【问题讨论】:

  • 您的消息引用了destory,您的代码显示了一个方法destroy。请注意,“o”和“r”的顺序不同。
  • 非常感谢兄弟 :) 傻我

标签: php laravel-5


【解决方案1】:

我希望这不是错字。

您基本上是在调用一个函数 destory,但您的控制器函数名称是 destroy
应该通过使其相同来修复。

Route::delete('/tasks/{task}', 'TaskController@destroy')->name('tasks.destroy');

【讨论】:

  • 这应该是要澄清的评论,然后是投票结束 - 不是答案
  • 非常感谢兄弟,我从教程中得到了它,从来没有想过这个:P
猜你喜欢
  • 2020-10-15
  • 2019-12-22
  • 2021-04-20
  • 2018-05-25
  • 2021-04-04
  • 2020-05-08
  • 2017-08-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多