我正在尝试(但失败!)将bouncer安装到项目中。我有几项工作正常,例如能够分配角色和为角色分配能力等。但是,我在以下方面苦苦挣扎...
我在刀片文件中有以下代码:
@can('USERS-view-users')
<a class="dropdown-item" href="{{ route('users.index') }}">View Users</a>
@endcan
它抛出此错误:
调用未定义的方法App \ User :: hasRole()(视图:C:\ Users \ User \ PhpstormProjects \ run-bouncer \ resources \ views \ admin \ nav.blade.php)
这是我的用户模型...
<?php
namespace App;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Illuminate\Support\Facades\Auth;
use Silber\Bouncer\Database\HasRolesAndAbilities;
use Silber\Bouncer\Bouncer;
class User extends Authenticatable
{
use Notifiable, HasRolesAndAbilities;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $guarded = [];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
}
我这里缺少什么吗?我可以很好地检查角色-例如,这对我有用。
@if(Auth::user()->isA('SuperAdmin')||Auth::user()->isA('PLTStudent'))
@include('admin.nav')
@endif