Oli*_*tti 9 php controller laravel laravel-5
这是我的routes.php:
Route::get('/', 'Panel\PanelController@index');
Run Code Online (Sandbox Code Playgroud)
这是我的文件夹:
Http/
....Controllers/
................Panel/
....................../PanelController.php
Run Code Online (Sandbox Code Playgroud)
这是我的控制器:
namespace App\Http\Controllers;
class PanelController extends Controller {
/* some code here... */
}
Run Code Online (Sandbox Code Playgroud)
这就是我得到的:
Class App\Http\Controllers\Panel\PanelController does not exist
Run Code Online (Sandbox Code Playgroud)
我尝试了"composer dump-autoload"命令,但仍然没有工作......
luk*_*ter 20
类的命名空间必须与目录结构匹配.在这种情况下,您必须调整您的课程并添加Panel
namespace App\Http\Controllers\Panel;
// ^^^^^
use App\Http\Controllers\Controller;
class PanelController extends Controller {
/* some code here... */
}
Run Code Online (Sandbox Code Playgroud)
按照三个简单的步骤
在命名空间中附加文件夹名称
namespace App\Http\Controllers\Panel;
Run Code Online (Sandbox Code Playgroud)添加"使用App\Http\Controllers\Controller;" 在类定义之前到控制器
namespace App\Http\Controllers\Panel;
use App\Http\Controllers\Controller;
Run Code Online (Sandbox Code Playgroud)在任何路径中调用控制器时添加附加的文件夹名称
Route::get('foo','Panel\PanelController@anyaction');
Run Code Online (Sandbox Code Playgroud)没有必要运行"composer dump-autoload"