iam在laravel中是新的,我用laravel 9在routes/api.php上写了这段代码
Route::group([
'prefix' => 'auth',
'namespace' => 'Auth'
], function(){
Route::post('register', 'RegisterController');
});然后我得到了无法运行的php技工服务,上面说
UnexpectedValueException
Invalid route action: [Auth\RegisterController].
at G:\PRODUCTIVITY\SANBERCODE\LARAVEL-VUE\TUGAS\laravel-vue-crowdfunding-website-batch-37\crowdfunding-website\vendor\laravel\framework\src\Illuminate\Routing\RouteAction.php:92
88▕ */
89▕ protected static function makeInvokable($action)
90▕ {
91▕ if (! method_exists($action, '__invoke')) {
➜ 92▕ throw new UnexpectedValueException("Invalid route action: [{$action}].");
93▕ }
94▕
95▕ return $action.'@__invoke';
96▕ }
1 G:\PRODUCTIVITY\SANBERCODE\LARAVEL-VUE\TUGAS\laravel-vue-crowdfunding-website-batch-37\crowdfunding-website\vendor\laravel\framework\src\Illuminate\Routing\RouteAction.php:47
Illuminate\Routing\RouteAction::makeInvokable("Auth\RegisterController")
2 G:\PRODUCTIVITY\SANBERCODE\LARAVEL-VUE\TUGAS\laravel-vue-crowdfunding-website-batch-37\crowdfunding-website\vendor\laravel\framework\src\Illuminate\Routing\Route.php:190
Illuminate\Routing\RouteAction::parse("api/auth/register", ["Auth\RegisterController", "Auth\RegisterController"])谁来帮帮我吧:)
发布于 2022-08-11 19:39:08
添加RegisterController函数
Route::group([
'prefix' => 'auth',
'namespace' => 'Auth'
], function(){
Route::post('register', 'RegisterController@store');
});发布于 2022-08-11 19:50:00
在post函数中,Route中缺少一个参数。
你想要的东西
Route::post('route_name', 'Controller@myFunction')或者在你的情况下:
Route::post('register', 'RegisterController@registerFunctionName');每9.x文件的其他变动:
Route::post('register', [RegisterController::class, 'registerFunctionName']);发布于 2022-08-11 19:54:32
这是一个可调用的控制器,是吗?
你只需要改变语法
Route::group([
'prefix' => 'auth',
'namespace' => 'Auth'
], function(){
Route::post('register', [RegisterController::class]);
});然后在路由文件的顶部导入类,并确保控制器中有一个__invoke()的公共方法。
https://stackoverflow.com/questions/73325875
复制相似问题