首页 > 解决方案 > 如何在 Laravel 8.0x 中调用资源控制器

问题描述

当 laravel 更新时,本次更新有一些变化,那么如何调用资源控制器给出 mi 示例

控制器称为:

首先使用控制器,例如:使用 App\Http\controllers\controller 名称;

接着

Route::get('/URL', 控制器名称::class);

但这样我就不能调用资源控制器。

标签: laravelcontrollerresourceslaravel-8

解决方案


__invoke()您定义的路由仅适用于实现该方法的单动作控制器。

如果您正在处理资源控制器,您可以使用元组语法或Route::resource()

元组语法示例:

use App\Http\Controllers\PostController;

Route::get('posts', [PostController::class, 'index']);
Route::post('posts', [PostController::class, 'store']);

路由资源示例:

use App\Http\Controllers\PostController;

Route::resource('posts', PostController::class);

参考资料: https ://laravel.com/docs/8.x/controllers#single-action-controllers https://laravel.com/docs/8.x/controllers#resource-controllers


推荐阅读