【问题标题】:ACL can method in Laravel 5.2Laravel 5.2 中的 ACL 可以方法
【发布时间】:2016-05-20 06:29:44
【问题描述】:

我使用以下表格在我的应用程序上做了一个简单的 ACL 系统:

员工->角色->roles_permissions

我还有员工、角色和权限表的模型。

现在我想实现一个“可以”方法,在该方法中我给出一个权限 slug,它返回 true 或 false。

到目前为止,我尝试了(不成功)以下方法(我在我的“is”方法上使用没有问题):

public function can($slug)
{
    return $this->role->permissions->slug == $slug;
}

如何使我的“can”方法按预期工作?

【问题讨论】:

    标签: php laravel acl


    【解决方案1】:

    自从我问起我做了什么:

        public function can($slug)
        {
            return $this->role->permissions->where('slug', $slug)->first()->slug == $slug;
        }
    

    不知道这是否是最好的方法,但它很有效。

    【讨论】:

    • 你可以只查找权限:return $this->role->permissions->where('slug', $slug)->count() > 0;
    猜你喜欢
    • 1970-01-01
    • 2016-05-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-03
    • 2016-12-16
    • 1970-01-01
    相关资源
    最近更新 更多