我收到错误,如登录时在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');
});
Run Code Online (Sandbox Code Playgroud)
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');
}
}
Run Code Online (Sandbox Code Playgroud)
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>
Run Code Online (Sandbox Code Playgroud)
Dan*_*ith 40
因为您的控制器是命名空间的,除非您专门导入Auth命名空间,PHP将假定它位于类的命名空间下,从而产生此错误.
要解决这个问题,请use Auth;在AdminHomeController文件顶部添加您的其他使用语句,或者Auth使用反斜杠作为前缀添加所有实例:\Auth让PHP知道从全局命名空间加载它.
| 归档时间: |
|
| 查看次数: |
41214 次 |
| 最近记录: |