2017-02-22 82 views
0

我一直試圖讓委託具有Laravel 5在這裏工作的指示https://github.com/Zizaco/entrustLaravel 5無法登錄使用委託

的要求我做了所有的變化之後,添加用戶和角色(我的天堂」添加T形成的權限,我將不再需要檢查他們...只是角色),分配角色的用戶,當我嘗試登錄用戶我得到這個錯誤信息

參數1傳遞給 照亮\ Auth \ EloquentUserProvider :: validateCredentials()必須是 Illuminate \ Contracts \ Auth \ Authenticatable的實例,的實例0給定應用程序\用戶,堪稱 C:\ WWW \ procurement2 \供應商\ laravel \框架的\ src \照亮\驗證\上線385 SessionGuard.php 和定義

我不知道這是什麼錯誤意味着或如何解決它

這裏是所有的代碼改變

應用/ user.php的

<?php 

namespace App; 

use Zizaco\Entrust\Traits\EntrustUserTrait; 
use Illuminate\Database\Eloquent\Model as Eloquent; 

class User extends Eloquent 
{ 
    use EntrustUserTrait; 
    /** 
    * The attributes that are mass assignable. 
    * 
    * @var array 
    */ 
    protected $fillable = [ 
     'firstname', 'lastname', 'email', 'password', 'userlevel', 'buyer' 
    ]; 

    /** 
    * The attributes that should be hidden for arrays. 
    * 
    * @var array 
    */ 
    protected $hidden = [ 
     'password', 'remember_token', 
    ]; 
} 

應用/ HTTP/Kernel.php

protected $routeMiddleware = [ 
     'auth' => \Illuminate\Auth\Middleware\Authenticate::class, 
     'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 
     'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class, 
     'can' => \Illuminate\Auth\Middleware\Authorize::class, 
     'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 
     'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 
     'role' => \Zizaco\Entrust\Middleware\EntrustRole::class, 
     'permission' => \Zizaco\Entrust\Middleware\EntrustPermission::class, 
     'ability' => \Zizaco\Entrust\Middleware\EntrustAbility::class, 
    ]; 

應用/配置/ app.php

'providers' => [ 

     /* 
     * Laravel Framework Service Providers... 
     */ 
     ... 

     /* 
     * Package Service Providers... 
     */ 
     Zizaco\Entrust\EntrustServiceProvider::class, 
]; 

'aliases' => [ 

     'App' => Illuminate\Support\Facades\App::class, 
     'Artisan' => Illuminate\Support\Facades\Artisan::class, 
     'Auth' => Illuminate\Support\Facades\Auth::class, 
     ... 

     'Entrust' => Zizaco\Entrust\EntrustFacade::class, 

    ], 

應用/配置/ auth.php

'users' => [ 
     'driver' => 'eloquent', 
     'model' => App\User::class, 
     'table' => 'users', 
    ], 

回答

1

App/User.php應該延伸Illuminate\Foundation\Auth\User代替use Illuminate\Database\Eloquent\Model as Eloquent;

+0

你能告訴我這樣做的代碼嗎?我不關注 – AdRock

+0

別擔心。我現在開始工作了 – AdRock