Container.php第776行中的ReflectionException:类APPPATH \ Http \ Controllers \ DashboardController不存在

时间:2015-03-26 11:47:16

标签: php laravel laravel-5

我知道许多帖子中都存在此错误,但我尝试了所有内容而没有任何解决方案。在我将auth.php文件中的值模型更改为用户模型的正确路径后,我的控制器无法正常工作。所有控制器抛出以下问题,但只有Auth控制器工作正常。我得到的错误信息是:

  

Container.php第776行中的ReflectionException:Class   APPPATH \ Http \ Controllers \ DashboardController不存在

我做了composer dump-autoload,但仍然是一样的。我的控制器在App \ Http \ Controllers \ Administrator \ Dashboard \ DashboardController.php中

namespace APPPATH\Http\Controllers;

    class DashboardController extends Controller {}

在我的路线中我有这个

get('/', array('as' => 'administrator.dashboard', 'uses' => 'DashboardController@index'));

get('/dashboard', array('as' => 'administrator.dashboard', 'uses' => 'DashboardController@index'));

get('/dashboard/index', array('as' => 'administrator.dashboard', 'uses' => 'DashboardController@index'));

这是laravel 5的作曲家

“autoload”:{     “classmap”:[         “数据库”     ]     “psr-4”:{         “APPPATH \”:“app /”     } },

有谁知道为什么不工作?谢谢

错误消息

  

Container.php第776行中的ReflectionException:

     

类APPPATH \ Http \ Controllers \ DashboardController不存在   Container.php第776行

     

在   ReflectionClass-> __构建体( 'APPPATH \ HTTP \控制器\ DashboardController')   在Container.php第776行

     

在Container-> build('APPPATH \ Http \ Controllers \ DashboardController',   在Container.php第656行中的array())

     

在Container-> make('APPPATH \ Http \ Controllers \ DashboardController',   Application.php第620行中的array())

     

在Application-> make('APPPATH \ Http \ Controllers \ DashboardController')   在ControllerDispatcher.php第83行

     

在   ControllerDispatcher-> makeController( 'APPPATH \ HTTP \控制器\ DashboardController')   在ControllerDispatcher.php第54行

     

在ControllerDispatcher-> dispatch(对象(路径),对象(请求),   Route.php中的'APPPATH \ Http \ Controllers \ DashboardController','index')   第198行

     在Route.php行中的Route-> runWithCustomDispatcher(object(Request))

  131

     

在Route->运行(对象(请求))在Router.php第691行

     

在Router-> Illuminate \ Routing {closure}(object(Request))at   Pipeline.php行中的call_user_func(object(Closure),object(Request))   141

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))at   Pipeline.php行中的call_user_func(object(Closure),object(Request))   101

     

在Pipeline->然后(对象(Closure))在Router.php第693行

     

在Router-> runRouteWithinStack(object(Route),object(Request))in   Router.php第660行

     在Router.php第618行的Router-> dispatchToRoute(对象(请求))

     

在Router->在Kernel.php第214行中的dispatch(object(Request))

     

at Kernel-> Illuminate \ Foundation \ Http {closure}(object(Request))at   Pipeline.php行中的call_user_func(object(Closure),object(Request))   141

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))in   VerifyCsrfToken.php第43行

     

在VerifyCsrfToken->处理(对象(Request),对象(Closure))中   VerifyCsrfToken.php第17行

     

在VerifyCsrfToken->处理(对象(Request),对象(Closure))中   Pipeline.php第125行

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))in   ShareErrorsFromSession.php第55行

     

在ShareErrorsFromSession->处理(对象(Request),对象(Closure))in   Pipeline.php第125行

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))in   StartSession.php第61行

     

在StartSession->句柄(对象(Request),对象(Closure))中   Pipeline.php第125行

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))in   AddQueuedCookiesToResponse.php第36行

     

在AddQueuedCookiesToResponse->句柄(对象(请求),   对象(Closure))在Pipeline.php第125行

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))in   EncryptCookies.php第40行

     

在EncryptCookies->句柄(对象(Request),对象(Closure))中   Pipeline.php第125行

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))in   CheckForMaintenanceMode.php第42行

     

在CheckForMaintenanceMode->句柄(对象(Request),对象(Closure))   在Pipeline.php第125行

     

at Pipeline-> Illuminate \ Pipeline {closure}(object(Request))at   Pipeline.php行中的call_user_func(object(Closure),object(Request))   101

     

在Pipeline->然后(对象(Closure))在Kernel.php第115行

     在Kernel.php中的

at Kernel-> sendRequestThroughRouter(object(Request))   第84行

     

在index.php第53行中的Kernel->句柄(对象(请求))

4 个答案:

答案 0 :(得分:1)

应该是App,而不是APPPATH

namespace App\Http\Controllers;

答案 1 :(得分:1)

对于我的情况,我因某些身份验证问题而收到此错误。 我按照L5.1中的简单2步骤解决了这个问题:

  1. 在composer.json文件的require部分输入“league / oauth2-server”:“4.1。*”。
  2. 在终端上运行'composer update'命令。
  3. 您也可以尝试。 感谢

答案 2 :(得分:0)

get('/', array('as' => 'administrator.dashboard', 'uses' => '\APPPATH\Http\DashboardController@index'));

它将尝试从根命名空间

获取它

答案 3 :(得分:0)

如果文件位于App\Http\Controllers\Administrator\Dashboard\DashboardController.php中,则首先给定的名称空间不正确,第二件事在您的routes.php中,您将在DashboardController中发送该文件,假设该文件将在controllers目录。尝试以下更改。

  • 在您的DashboardController.php

    namespace APPPATH\Http\Controllers\Administrator\Dashboard;
    
    class DashboardController extends Controller {
    
    }
    
  • 在您的routes.php中,如下更改路线

    get('/', array('as' => 'administrator.dashboard', 'uses' => 'Administrator\Dashboard\DashboardController@index'));
    

我希望这会起作用。