0
下午好,我不明白這一點例外Laravel 5.1命名空間的控制器給反射異常
ReflectionException在Container.php行737:類應用程序\ HTTP \ \控制器登錄\ LoginController中不存在
我知道那是與命名空間有關,但我配置我的composer.json自動加載。當我將其更改爲app \ Http \ Controllers \ Login時,它工作正常。 我也做了明確的工匠編譯和作曲家轉儲自動加載
我的班級是這樣
<?php
namespace Login;
use Controller;
use Validator;
use Input;
use Auth;
use Redirect;
use View;
class LoginController extends Controller{}
我composer.json自動加載
"autoload": {
"classmap":
[ "app/Http/Controllers" , "app/Models" , "database" ],
"psr-4": {
"app\\": "app/"
}
},
我controllers目錄是這樣
- app
-- Http
--- Controllers
---- Login
----- LoginController.php
-- Models
--- User
---- User.php
在此先感謝
編輯:爲什麼當我使用這樣的命名空間沒有與我的模型文件的問題:
命名空間的用戶;
在我的config認證方式,我有這樣的:
'模型'=>用戶\用戶:類,
,當我用laravel 4我並不需要把應用程序/模型或應用程序/控制器,我認爲與類映射改變它的工作。在composer.json – user2876735
類映射屬性是有告訴自動加載磁帶機在哪裏可以找到不遵循PSR-0或PSR-4約定類。無論是作曲或自動加載磁帶機可以改變的事實,你的控制器在「登錄」命名空間 –
避免使用類映射功能,如果你的代碼可以符合PSR-4。它會隱藏錯誤地命名或放置在文件系統中的錯誤,並且需要更多時間來創建自動加載器,因爲必須掃描目錄樹以查找php文件並解析類。 – Sven