新鲜的 laravel lumen 找不到控制器驻留在控制器的子文件夹下

Posted

技术标签:

【中文标题】新鲜的 laravel lumen 找不到控制器驻留在控制器的子文件夹下【英文标题】:Fresh laravel lumen cannot find controller reside under subfolder of controllers 【发布时间】:2019-12-16 21:28:19 【问题描述】:

新的 laravel lumen 5.8 已安装,但在路由中找不到控制器名称

我在App\Http\Controllers\User 中创建了UserController

用户控制器内容:

namespace App\Http\Controllers;

class UserController extends Controller 
   public function index() 
      return 'User list';
   

在路由中加载:

$router->get('/user', 'User\UserController@index')

错误:

类 App\Http\Controllers\User\UserController 不存在

我也尝试过使用绝对命名空间App\Http\Controllers\User\UserController@index,但它仍然不起作用。

如果我不将UserController 放在用户文件夹中,它会起作用

【问题讨论】:

尝试将控制器的命名空间更改为namespace App\Http\Controllers\User; 我会将其转换为答案,您可以将其标记为已接受。 【参考方案1】:

尝试将控制器的命名空间更改为

namespace App\Http\Controllers\User;

class UserController extends Controller

   // ...


【讨论】:

【参考方案2】:

UserController 的命名空间更改为:

namespace App\Http\Controllers\User;

class UserController extends Controller

   // ...

【讨论】:

以上是关于新鲜的 laravel lumen 找不到控制器驻留在控制器的子文件夹下的主要内容,如果未能解决你的问题,请参考以下文章

在共享主机中的 Lumen 项目上找不到类异常

扩展抽象测试类时找不到测试类

在 Lumen/Laravel 控制器中添加自定义逻辑的最佳实践

Laravel/Lumen - Artisan 控制台中缺少命令

如何解决 Lumen/Laravel 中的单例?

如何在 Laravel 和 Lumen 的控制器构造函数中的中间件之后调用方法、函数或初始化类?