我想測驗一個功能,在該功能中用戶檢查是否擁有此操作權限。當我傳遞一個權限模型時,它會回傳一個好的結果,但是當我在引數中給出權限名稱時,它會運行一個錯誤。
作曲家.json
"laravel/framework": "^9.3",
"spatie/laravel-permission": "^5.5"
測驗.php
$permission = 'do-something';
$permissionModel = Permission::create([
'name' => $permission,
'guard_name' => 'sanctum'
]);
$user = User::factory()->create();
$user->givePermissionTo($permissionModel);
$user->hasPermissionTo($permissionModel); // return true
$user->hasPermissionTo($permission); // fail with error:
Spatie\Permission\Exceptions\PermissionDoesNotExist: There is no permission named `do-something` for guard `sanctum`.
我想使用字串解決方案,我做錯了什么?
uj5u.com熱心網友回復:
如果您的權限表中存在權限名稱,請嘗試以下命令:
php artisan cache:forget spatie.permission.cache
然后
php artisan cache:clear
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/477537.html
上一篇:AssertNotNullAssertionFailedError:預期:不是<null>
下一篇:如何在側邊選單中向下滾動
