我逐点遵循了自述文件。
但是,当我尝试使用echo $args['song_name'];
或@role
刀片指令时,
它不起作用,似乎总是@can
我试图自己解决这个问题,但我的想法已荡然无存。我以为这可能是个警卫问题,但是我正在使用以下
false
我不使用两种身份验证方法,仅使用背包一种。我过去确实运行过 'middleware_class' => [
App\Http\Middleware\CheckIfAdmin::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
Backpack\Base\app\Http\Middleware\UseBackpackAuthGuardInsteadOfDefaultAuthGuard::class,
],
命令,但此后我删除了它创建的所有文件。
以下命令make:auth
返回dd(backpack_user()->hasRole('test'))
,这确实使我认为这是一个保护问题。
表 model_has_roles 如下所示(id 2是我的用户) db screenshot
欢迎任何帮助
谢谢
答案 0 :(得分:0)
这就是我解决的方法 1.在base.middleware_class数组中使用Backpack \ Base \ app \ Http \ Middleware \ UseBackpackAuthGuardInsteadOfDefaultAuthGuard :: class。根据文档https://github.com/Laravel-Backpack/PermissionManager 2.在刀片中使用指令@role('***')。 @can无法正常工作。
在较早版本的Demo中不需要此功能。似乎最新的配置权限。php具有不同的默认值。
答案 1 :(得分:0)
就我而言,清除缓存可解决此问题:
php artisan view:clear