AuthController不存在

时间:2017-01-15 04:26:51

标签: php laravel laravel-5 composer-php laragon

我正在使用laravel 5.3.29制作控制器时遇到错误。

Error While Running Project

我到处搜索,已经尝试过这种方法。

  • 作曲家更新
  • composer dump-autoload

我的路线文件是。 enter image description here

我的AuthController文件。 enter image description here

如果有人知道我做错了,请告诉我谢谢。

Laravel.log:

[2017-01-15 07:30:32] local.ERROR: ReflectionException: Class App\Http\Controllers\Auth\AuthController does not exist in C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Container\Con tainer.php:749 Stack trace: #0 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Container\Container.php(749): ReflectionClass->__construct('App\\Http\\Contro...') #1 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Container\Container.php(644): Illuminate\Container\Container->build('App\\Http\\Contro...', Array) #2 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(709): Illuminate\Container\Container->make('App\\Http\\Contro...', Array) #3 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Route.php(203): Illuminate\Foundation\Application->make('App\\Http\\Contro...') #4 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Route.php(316): Illuminate\Routing\Route->getController() #5 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Route.php(278): Illuminate\Routing\Route->controllerMiddleware() #6 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Router.php(666): Illuminate\Routing\Route->gatherMiddleware() #7 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Router.php(646): Illuminate\Routing\Router->gatherRouteMiddleware(Object(Illuminate\Routing\Route)) #8 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Router.php(629): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request)) #9 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Router.php(607): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request)) #10 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(268): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request)) #11 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(53): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request)) #12 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode.php(46): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #13 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(137): Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode->handle(Object(Illuminate\Http\Request), Object(Closure)) #14 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Pipeline.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request)) #15 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Pipeline\Pipeline.php(104): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request)) #16 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(150): Illuminate\Pipeline\Pipeline->then(Object(Closure)) #17 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(117): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request)) #18 C:\laragon\www\MainProject\public\index.php(53): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request)) #19 {main}
[2017-01-15 07:30:32] local.ERROR: ReflectionException: Class App\Http\Controllers\Auth\AuthController does not exist in C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Container\Container.php:749 Stack trace: #0 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Container\Container.php(749): ReflectionClass->__construct('App\\Http\\Contro...') #1 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Container\Container.php(644): Illuminate\Container\Container->build('App\\Http\\Contro...', Array) #2 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(709): Illuminate\Container\Container->make('App\\Http\\Contro...', Array) #3 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Route.php(203): Illuminate\Foundation\Application->make('App\\Http\\Contro...') #4 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Route.php(316): Illuminate\Routing\Route->getController() #5 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Route.php(278): Illuminate\Routing\Route->controllerMiddleware() #6 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Routing\Router.php(666): Illuminate\Routing\Route->gatherMiddleware() #7 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(193): Illuminate\Routing\Router->gatherRouteMiddleware(Object(Illuminate\Routing\Route)) #8 C:\laragon\www\MainProject\vendor\laravel\framework\src\Illuminate\Foundation\Http\Kernel.php(163): Illuminate\Foundation\Http\Kernel->gatherRouteMiddleware(Object(Illuminate\Http\Request)) #9 C:\laragon\www\MainProject\public\index.php(58): Illuminate\Foundation\Http\Kernel->terminate(Object(Illuminate\Http\Request), Object(Illuminate\Http\Response)) #10 {main}

5 个答案:

答案 0 :(得分:1)

在Laravel 4.2中,我认为你不需要

namespace App\Http\Controllers\Auth
use App\Http\Controllers\Controller

只需删除它,请注意控制器路径

确保AuthController.php位于app/controllers

你确定使用的是Laravel 4.2吗?为什么web.php中的路线?

只要我知道,如果您使用的是Laravel 5.3,请再次确认您正在使用的Laravel版本

答案 1 :(得分:1)

将路线更改为:

Route::get('/login', 'Auth\AuthController@getLogin');

还要确保类文件位于此目录中:

app\Http\Controllers\Auth

答案 2 :(得分:0)

将名称空间更改为App\Http\Controllers\Auth而不是Route::get('/login', 'Auth\AuthController@getLogin');

或者,在您的routes.php中说{{1}}

答案 3 :(得分:0)

由于Controller中的手动输入文件而发生的问题。

  • 我删除了我用新文件选项创建的手动文件 升华
  • 再添加laragon终端php artisan make:controller
    AuthController。
  • 复制粘贴了现有的代码,现在它的工作顺利进行。

答案 4 :(得分:0)

由于未识别命名空间路径。

Route::group([

'middleware' => 'api',
'namespace' => 'App\Http\Controllers',
'prefix' => 'auth'

], function ($router) {

Route::post('login', 'AuthController@login');
Route::post('logout', 'AuthController@logout');
Route::post('refresh', 'AuthController@refresh');
Route::post('me', 'AuthController@me');

});