我正在使用laravel 5.8,这是我的route / 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不存在。
如果有人可以提供帮助,那真是太好了。
答案 0 :(得分:1)
我希望这不是错字。
您基本上是在调用函数 destory
,但您的控制器函数名称是 destroy
应该通过使其相同来修复。
Route::delete('/tasks/{task}', 'TaskController@destroy')->name('tasks.destroy');