【发布时间】:2021-02-25 03:24:28
【问题描述】:
当我在服务提供商中使用 (auth()->user()->hasRole('User')) 或 (Auth::user()->hasRole('User')) 时,它给了我这个错误:
Call to a member function hasRole() on null
我使用 spatie 库并将其包含在我的 serviceProvider 文件中:
use Illuminate\Support\Facades\Auth;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
use Spatie\Permission\Traits\HasRoles;
而我写的代码是:
if (Auth::user()->hasRole('User')) {
$count = Complaint::where('user_id', auth()->user()->id)->where('is_deleted', 'not_deleted')->get()->count();
} else {
$count = Complaint::where('status', '!=', null)->where('is_deleted', 'not_deleted')->get()->count();
}
【问题讨论】:
标签: laravel-8 roles service-provider laravel-permission