Laravel 5.5 使用 artesaos/defender
Posted
技术标签:
【中文标题】Laravel 5.5 使用 artesaos/defender【英文标题】:Laravel 5.5 using artesaos/defender 【发布时间】:2018-03-05 01:37:07 【问题描述】:我正在使用 laravel 5.5.* 并安装此 https://github.com/artesaos/defender 包以获得角色和权限,一切正常,但是当我尝试获得权限时
$permissions = array_map(function ($permission)
return $permission['name'];
, $user->getAllPermissions()->toArray());
遇到打击错误:
"Symfony\Component\Debug\Exception\FatalThrowableError" file : H:\xampp\htdocs\LaraVueAdmin\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Model.php"
line: 147 message : "Type error: Argument 1 passed to Illuminate\Database\Eloquent\Model::__construct() must be of the type array, object given, called in H:\xampp\htdocs\LaraVueAdmin\vendor\artesaos\defender\src\Defender\Traits\Models\Permission.php on line 75"
【问题讨论】:
我找到解决方案,将github.com/artesaos/defender/blob/master/src/Defender/Traits/… 替换为return PermissionUserPivot::fromRawAttributes($parent, $attributes, $table, $exists, $using);
【参考方案1】:
Muzafar Ali 的这个解决方案对我有用:
我通过替换github.com/artesaos/defender/blob/master/src/Defender/Traits/…
找到了解决方案
与
return PermissionUserPivot::fromRawAttributes($parent, $attributes,
$table, $exists, $using);
【讨论】:
以上是关于Laravel 5.5 使用 artesaos/defender的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 5.5 使用 artesaos/defender
Laravel 5.5 - Laravel Passport 使用正确的授权类型?
Uncaught ReferenceError: $ is not defined - Laravel 5.5 + Laravel Mix