2017-06-05 154 views
0

我正在为我的laravel项目创建Admin后端。它使用laravel Auth脚手架。周末后我回到它后我现在得到这个错误,我正在努力寻找一个错误。我已检查过所有拼写和大小写。我已经跑了作曲家更新等等,但仍然没有运气。这里是下面的错误,我有admin类及其在namespace App,不知道怎么回事:ReflectionException错误类admin不存在

ReflectionException error class admin does not exist.  

Web.php文件

Route::prefix('admin')->group(function() { 
    Route::get('/login', 'Auth\[email protected]')->name('admin.login'); 
    Route::post('/login', 'Auth\[email protected]')->name('admin.login.submit'); 
    Route::get('/', '[email protected]')->name('admin.dashboard'); 
    Route::get('/logout', 'Auth\[email protected]')->name('admin.logout'); 
}); 

AdminLoginController.php

<?php 

namespace App\Http\Controllers\Auth; 

use Auth; 
use Illuminate\Http\Request; 
use App\Http\Controllers\Controller; 

class AdminLoginController extends Controller 
{ 

    public function __construct() 
    { 
     $this->middleware('admin')->except('logout'); 
    } 

    public function showLoginForm() 
    { 
     return view('auth.admin-login'); 
    } 

    public function login(Request $request) 
    { 
     //Validate the form data 
     $this->validate($request, [ 
      'email' => 'required|email', 
      'password' => 'required|min:6' 
     ]); 

     // Attempt to log the user in 
     if (Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)) { 
      // If successful, then redirect to tehir inteded page 
      return redirect()->intended(route('admin.dashboard')); 
     } 

     // unsuccessful, then redirect back to the login with the form data 
     return redirect()->back()->withInput($request->only('email', 'remember')); 
    } 

    public function logout() 
    { 
     Auth::guard('admin')->logout(); 
     return redirect('/'); 
    } 
} 

AdminController.php

<?php 

namespace App\Http\Controllers; 

use Auth; 
use Illuminate\Http\Request; 

class AdminController extends Controller 
{ 
    /** 
    * Create a new controller instance. 
    * 
    * @return void 
    */ 
    public function __construct() 
    { 
     $this->middleware('auth:admin'); 
    } 

    /** 
    * Show the application dashboard. 
    * 
    * @return \Illuminate\Http\Response 
    */ 
    public function index() 
    { 
     return view('admin'); 
    } 
} 
+0

很好,这是错误,现在哪里是代码? – hassan

+0

也许它在我的web.php文件中是这个Route ::前缀('admin') - >组的代码(function(){ Route :: get('/ login','Auth \ AdminLoginController @ showLoginForm' ) - > name('admin.login'); Route :: post('/ login','Auth \ AdminLoginController @ login') - > name('admin.login.submit'); Route :: get '/','AdminController @ index') - > name('admin.dashboard'); Route :: get('/ logout','Auth \ AdminLoginController @ logout') - > name('admin.logout') ; }); – ashleyclamp

+0

请使用[相关代码](https://stackoverflow.com/help/mcve)更新您的文章 – hassan

回答

0

好吧,我已经修好了!在AdminLoginController,我加入这个'guest:admin'这个,而不是仅仅'admin' betweeen中间件parenthese:

public function __construct() 
    { 
     $this->middleware('guest:admin')->except('logout'); 
    } 
相关问题