Laravel 更改控制器目录时找不到自定义控制器

Laravel custom controller not found when changing the controller directory

像这样更改控制器目录位置时:

Route::group([
  'prefix'      => 'report',
  'middleware'  => 'auth',
], function() {
    Route::get('/summary','IOS\ReportController@index');
});

它returns一条错误信息:

Error
Class 'App\Http\Controllers\IOS\Controller' not found

但它在以下方式下工作得很好:

Route::group([
  'prefix'      => 'report',
  'middleware'  => 'auth',
], function() {
    Route::get('/summary','ReportController@index');
});

更改目录位置后,我尝试 composer dump-autoload 但仍然出现错误。

laravel 上的每个 Controller 都应该 extends 基数 laravel Controller
基本控制器位于此路径中:App\Http\Controllers
所以当你在另一个文件夹上创建控制器时,创建的控制器想要从基本控制器扩展但在文件夹
中找不到它 所以你应该在 ReportController

上这样做
namespace App\Http\Controllers\IOS;   //namespace of your controller
use App\Http\Controllers\Controller;  //the path of base Controller

class ReportController extends Controller  //your controller extends from base controller