[英]Laravel 5.4 Class 'App\Http\Controllers\Admin\Auth\Auth' not found
[英]Class 'App\Http\Controllers\admin\Auth' not found in laravel 5
我收到錯誤,如登錄時在laravel 5中找不到類'App \\ Http \\ Controllers \\ admin \\ Auth' 。 我是laravel的新手所以請幫助我或給我一些教程鏈接,以便與管理員一起進行完整的laravel應用程序開發
routes.php文件
Route::group(array('prefix'=>'admin'),function(){
Route::get('login', 'admin\AdminHomeController@showLogin');
Route::post('check','admin\AdminHomeController@checkLogin');
});
AdminHomeController.php
<?php namespace App\Http\Controllers\admin;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class AdminHomeController extends Controller {
//
public function showLogin()
{
return view('admin.login');
}
public function checkLogin(Request $request)
{
$data=array(
'username'=>$request->get('username'),
'password'=>$request->get('password')
);
if(Auth::attempt($data))
{
return redirect::intended('admin/dashboard');
}
else
{
return redirect('admin/login');
}
}
public function logout()
{
Auth::logout();
return redirect('admin/login');
}
public function showDashboard()
{
return view('admin.dashboard');
}
}
login.blade.php
<html>
<body>
{!! Form::open(array('url' => 'admin/check', 'id' => 'login')) !!}
<input type="text" name="username" id="username" placeholder="Enter any username" />
<input type="password" name="password" id="password" placeholder="Enter any password" />
<button name="submit">Sign In</button>
{!! Form::close() !!}
</body>
</html>
因為您的控制器是命名空間的,除非您專門導入Auth
命名空間,PHP將假定它位於類的命名空間下,從而產生此錯誤。
要解決此問題,請添加use Auth;
在AdminHomeController
文件的頂部以及其他使用語句,或者使用反斜杠為Auth
所有實例添加前綴,如下所示: \\Auth
讓PHP知道從全局命名空間加載它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.