Laravel spat ie разрешения проверяют роль пользователя внутри модели - PullRequest
0 голосов
/ 19 марта 2020

Я использую в своем проекте composer пакет для laravel spatie / laravel -permission . Как проверить роль пользователя для содержимого внутренней модели с помощью метода hasRole()?

Пример

Это не работает внутри модели

<?php

namespace App\Models;

use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Spatie\Permission\Traits\HasRoles;
use Illuminate\Database\Eloquent\SoftDeletes;

class User extends Authenticatable
{
    use Notifiable, HasRoles, SoftDeletes;

    public function orders()
    {
        if($this->hasRole("client")) {
            //
        }
    }
}

Когда я попробовал этот случай вне модели, все работало:

$user = User::find(4);
if($user->hasRole("client")) {
    //
}
...