Пример кода пакета Laravel Bouncer не работает - PullRequest
1 голос
/ 13 июня 2019

Я использую Laravel 5.8, PHP 7.3.3 Установленный пакет JosephSilber / bouncer для управления ролями, разрешениями и т. Д. Я попробовал это, прямо из примера, ничего особенного:

Bouncer::allow('superuser')->to('create-account'); //works, creates role 'superuser', creates ability 'create-account'
Bouncer::allow('employer')->to('create-employee'); //works
$john = App\User::where('email','john@gmail.com')->first(); //works, finds John
$john->assign('superuser');  //works, John is now a user user
$john->can('create-account'); // works, returns true
$john->can('create-employee'); // works, returns false


$boolean = $john->isAn('superuser') ; //ERROR=> array_key_exists(): The first argument should be either a string or an integer

Не уверен, почему я получаю этоошибка.Схожие проблемы с User :: whereIs ('superuser') -> get () и т. Д.

Я попытался отладить, и проблема возникает, когда следующая строка вызывается из BaseClipboard.php.Это происходит в этом вызове, до этого я могу проверить входящие параметры.

$authority->roles()->get([
            'name', Models::role()->getQualifiedKeyName()
        ]) 

Однако я не мог пройти мимо этого.Ценю любую помощь.


Не могу понять, как получить чистый дамп трассировки стека.Но вот копия и вставка.Я предполагаю, что только последние несколько будут представлять интерес

ErrorException

… \ vendor \ laravel \ framework \ src \ Illuminate \ Support \ Collection.php2029

51

array_key_exists

… \ vendor \ laravel \ framework \ src \ Illuminate \ Support \ Collection.php2029

50

Подсветка \ Поддержка \ Collection offsetExists

… \ vendor \ laravel \ framework \ src \ Illuminate \ Support \ Collection.php876

49

Подсветка \ Support \ Collection get

… \ vendor \ silber \bouncer \ src \ BaseClipboard.php82

48

Silber \ Bouncer \ BaseClipboard getRolesLookup

… \ vendor \ silber \ bouncer \ src \ CachedClipboard.php234

47

Silber \ Bouncer \ CachedClipboard Silber \ Bouncer {closure}

… \ vendor \ silber \ bouncer \ src \ CachedClipboard.php248

46

Silber \ Bouncer \ CachedClipboard Sear

… \ vendor \ silber \ bouncer \ src \ CachedClipboard.php235

45

Silber \ Bouncer \ CachedClipboard getRolesLookup

… \ vendor \ silber \ bouncer \ src \ BaseClipboard.php57

44

Silber \ Bouncer \ BaseClipboard countMatchingRoles

… \ Vendor \ silber \ bouncer \ src \ BaseClipboard.php37

43

Silber \ Bouncer \ BaseClipboard checkRole

… \ vendor \ silber \ bouncer \ src \ Database \Concerns \ HasRoles.php92

42

Приложение \ Пользователь isAn

… \ rout \ web.php379

41

Приложение \Поставщики \ RouteServiceProvider {closure}

… \ vendor \ laravel \ framework \ src \ Illuminate \ Routing \ Route.php205


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...