laravel 在路由中使用的自定义控制器上出错
laravel is giving error on custom controller used in routes
我在 routes/web.php 文件
中有一个简单的
Route::get(Config::get('constants.ADMIN_PATH') . '/categories', 'AdminControllers\AdminPagesController@index');
我创建了一个文件夹 AdminControllers,里面有一个名为 AdminPagesController 的控制器,但我收到错误
Class App\Http\Controllers\AdminControllers\AdminPagesController does not exist
而我查看了同一个文件夹并且 class 存在。这是我的 class 代码
命名空间App\Http\Controllers;
使用Illuminate\Http\Request;
class AdminPagesController extends Controller
{
public function __construct() {
}
public function index () {
return "hello";
}
}
将您的命名空间更改为
namespace App\Http\Controllers\AdminControllers;
Laravel 将根据您的名称间距而不是您的目录结构来解析控制器。
您应该正确指定命名空间,将其更改为:
namespace App\Http\Controllers\AdminControllers; // <------- correct this namespace
use Illuminate\Http\Request;
class AdminPagesController extends Controller
{
public function __construct() {
}
public function index () {
return "hello";
}
}
希望对您有所帮助!
如果您选择将控制器嵌套到 **
App\Http\Controllers
** 目录,使用相对于
的特定 class 名称
App\Http\Controllers
根命名空间。
namespace App\Http\Controllers\AdminControllers;
我在 routes/web.php 文件
中有一个简单的Route::get(Config::get('constants.ADMIN_PATH') . '/categories', 'AdminControllers\AdminPagesController@index');
我创建了一个文件夹 AdminControllers,里面有一个名为 AdminPagesController 的控制器,但我收到错误
Class App\Http\Controllers\AdminControllers\AdminPagesController does not exist
而我查看了同一个文件夹并且 class 存在。这是我的 class 代码
命名空间App\Http\Controllers;
使用Illuminate\Http\Request;
class AdminPagesController extends Controller
{
public function __construct() {
}
public function index () {
return "hello";
}
}
将您的命名空间更改为
namespace App\Http\Controllers\AdminControllers;
Laravel 将根据您的名称间距而不是您的目录结构来解析控制器。
您应该正确指定命名空间,将其更改为:
namespace App\Http\Controllers\AdminControllers; // <------- correct this namespace
use Illuminate\Http\Request;
class AdminPagesController extends Controller
{
public function __construct() {
}
public function index () {
return "hello";
}
}
希望对您有所帮助!
如果您选择将控制器嵌套到 **
App\Http\Controllers
** 目录,使用相对于
的特定 class 名称App\Http\Controllers
根命名空间。
namespace App\Http\Controllers\AdminControllers;