gpt4 book ai didi

php - Laravel 5.2 with Entrust - 无法检查权限并呈现 403

转载 作者:搜寻专家 更新时间:2023-10-31 21:52:34 26 4
gpt4 key购买 nike

我是 Laravel 的新手,我正在开发一个具有用户、角色和权限的应用程序。为此,我使用 Zizaco/Entrust。我几乎完成了所有步骤,但无法显示 403 的自定义页面。我的代码如下:

Permission : role-list
Role : Manager

'role-list' 被分配给 'manager' 角色,然后 'manager' 角色被分配给 'ABC' 用户。

在我的 app\kernel 文件 id 中添加了这些中间件:

protected $routeMiddleware = [
'auth' => \Eybos\Http\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'can' => \Illuminate\Foundation\Http\Middleware\Authorize::class,
'guest' => \Eybos\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'role' => \Zizaco\Entrust\Middleware\EntrustRole::class,
'permission' => \Zizaco\Entrust\Middleware\EntrustPermission::class,
'ability' => \Zizaco\Entrust\Middleware\EntrustAbility::class,
];

在我的路线文件中:

Route::get( 'backend/roles', [ 'as' => 'backend.roles.index', 'uses' => 'Backend\RoleController@index', 'middleware' => ['permission:role-list|role-create|role-edit|role-delete']] );

然后创建一个文件:resources/views/errors/403.blade.php

@extends('layouts.backend')

@section('content')
<h1>You don't have permission.</h1>
@endsection

但是当我尝试访问该页面时出现此错误:

FatalErrorException in Decorator.php line 80:
Trying to clone an uncloneable object of class Symfony\Component\HttpKernel\Exception\HttpException

最佳答案

不确定这是否是正确的答案,但是...

转到Lewis->presenter->src->Decorator.php

在第 80 行你应该看到“$object = clone $object;”

注释该行,它应该开始使用权限。

关于php - Laravel 5.2 with Entrust - 无法检查权限并呈现 403,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38851123/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com