我在使用子文件夾中的控制器路由時遇到問題。我嘗試了Laravel Controller Subfolder routing中提出的解決方案,但我無法使其運行。laravel中的子文件夾路由5
文件夾結構
HTTP
Controllers
Admin
AdminControllers
User
UserControllers
BaseController
Admincontrollers在定義的 '應用程序\ HTTP \控制器\管理員' 命名空間
routes文件
Route::group(['middleware'=> 'admin','prefix' => 'admin'], function() {
Route::get('home', '[email protected]');
Route::get('home', 'Admin\[email protected]');
Route::resource('events', 'AdminEventController');
Route::resource('events', 'Admin\AdminEventController');
Route::get('myevents', '[email protected]');
Route::get('myevents', 'Admin\[email protected]');
Route::resource('groups', 'AdminGroupController');
Route::resource('users', 'AdminUserController');
});
這似乎不可思議,但它是隻有這樣才能保證它現在正常工作。 如果我刪除
Route::get('myevents', 'Admin\[email protected]');
//errormessage Class App\Http\Controllers\AdminEventController does not exist
如果我刪除
如果我把控制器控制器命名空間(而不是管理員之一) 我仍然獲得
//errormessage Class App\Http\Controllers\AdminEventController does not exist
當只添加的路線是
Route::resource('events', 'AdminEventController');
你試過完全合格的控制器的名字嗎?例如。 '路線:: get('home','App \ Http \ Controllers \ Admin \ AdminHomeController @ index');'我的猜測是Laravel(或者是composer自動加載器)試圖猜測你指的是什麼,它錯了。 – Kryten
這並沒有訣竅,但新的錯誤給了我一個想法,現在它已經修復 – JorenV