如何使用laravel auth?

时间:2017-07-12 04:11:37

标签: php laravel-5

美好的一天。我试图使用laravel auth。但我有点困惑。

我已登录并注册。

这是我的登录过程

public function index(){

   if(!Auth::check()){
        return view::make("Login");
     }else{
        dd(Auth::user());
    }
}
    function loginproses(Request $request){
        extract(Maincontroller::populateform());    
         $a = Loginmodel::where('username',$username)
                    ->where('password',md5($password))
                    ->first();
            if($a === NULL){ 
                return redirect('/')->with('status', 'Username atau Password salah');
            }else{

            $userdata = array(
                    'username' =>$username
                );

           if(Auth::attempt($userdata)){
                return redirect('/');
           }
        }
    }

我使用Userlogin作为我的表,所以我改变了这个

'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => App\Loginmodel::class,
            'table' => 'Userlogin'
        ],

但登录后的问题。我收到此错误

  

参数1传递给   Illuminate \ Auth \ EloquentUserProvider :: validateCredentials()必须是   Illuminate \ Contracts \ Auth \ Authenticatable的实例,实例   App \ Loginmodel给出,调用   d:\ XAMPP \ htdocs中\ sitestarter \厂商\ laravel \框架\ SRC \照亮\验证\ SessionGuard.php   在第380行并定义

我该如何解决?

使用谷歌搜索how to login in laravel时,我总是看到Laravel auth。那我真的需要使用Laravel Auth吗?并且确实需要使用auth控制器吗?

1 个答案:

答案 0 :(得分:1)

您的Loginmodel是否像

一样扩展Authenticatable

使用Illuminate \ Foundation \ Auth \ User作为Authenticatable; 使用Illuminate \ Database \ Eloquent \ Model;

类Loginmodel扩展了Authenticatable { }