Laravel : Class 控制器不存在
Laravel : Class controller does not exist
我创建了一个简单的控制器并定义了一个函数。但是当我 运行 这个它 returns 控制器不存在的错误。
在我的web.php中指定一条路线。
<?php
Route::get('/', function () { return view('front.welcome'); });
Route::get('plan','PlanController@PlanActivity')->name('plan');
在我控制器的另一端我的代码:
<?php
namespace App\Http\Controllers\Front;
use App\Http\Controllers\Controller as BaseController;
use Illuminate\Http\Request;
class PlanController extends Controller {
public function PlanActivity()
{
dd("hello");
//return view('admin.index');
}
}
This controller created on App\Http\Controllers\Front - on front folder
错误:
ReflectionException (-1)
Class App\Http\Controllers\PlanController does not exist
将 Front
部分添加到:
Route::get('plan', 'Front\PlanController@PlanActivity')->name('plan');
此外,将控制器的顶部更改为:
namespace App\Http\Controllers\Front;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
和运行 composer du
.
来自the docs:
By default, the RouteServiceProvider
includes your route files within a namespace group, allowing you to register controller routes without specifying the full App\Http\Controllers
namespace prefix. So, you only need to specify the portion of the namespace that comes after the base App\Http\Controllers
namespace.
首先在定义路由时,请确保为控制器使用正确的路径。正确的是:
Route::get('plan','Front/PlanController@PlanActivity')->name('plan');
其次,您将 Controller
Class 导入为 BaseController
。所以你应该扩展 BaseController
而不是 Controller
:
class PlanController extends BaseController {
public function PlanActivity()
{
dd("hello");
//return view('admin.index');
}
}
我创建了一个简单的控制器并定义了一个函数。但是当我 运行 这个它 returns 控制器不存在的错误。
在我的web.php中指定一条路线。
<?php
Route::get('/', function () { return view('front.welcome'); });
Route::get('plan','PlanController@PlanActivity')->name('plan');
在我控制器的另一端我的代码:
<?php
namespace App\Http\Controllers\Front;
use App\Http\Controllers\Controller as BaseController;
use Illuminate\Http\Request;
class PlanController extends Controller {
public function PlanActivity()
{
dd("hello");
//return view('admin.index');
}
}
This controller created on App\Http\Controllers\Front - on front folder
错误:
ReflectionException (-1) Class App\Http\Controllers\PlanController does not exist
将 Front
部分添加到:
Route::get('plan', 'Front\PlanController@PlanActivity')->name('plan');
此外,将控制器的顶部更改为:
namespace App\Http\Controllers\Front;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
和运行 composer du
.
来自the docs:
By default, the
RouteServiceProvider
includes your route files within a namespace group, allowing you to register controller routes without specifying the fullApp\Http\Controllers
namespace prefix. So, you only need to specify the portion of the namespace that comes after the baseApp\Http\Controllers
namespace.
首先在定义路由时,请确保为控制器使用正确的路径。正确的是:
Route::get('plan','Front/PlanController@PlanActivity')->name('plan');
其次,您将 Controller
Class 导入为 BaseController
。所以你应该扩展 BaseController
而不是 Controller
:
class PlanController extends BaseController {
public function PlanActivity()
{
dd("hello");
//return view('admin.index');
}
}