ondrejbakan/permissions

此包的最新版本(v1.0.0)没有可用的许可证信息。

为 Laravel 5 提供非常简单的角色和权限。

v1.0.0 2016-08-18 22:33 UTC

This package is not auto-updated.

Last update: 2024-09-20 21:50:19 UTC


README

每个用户都应该有一个或多个角色。角色表中应包括名为 name 的列,然后在您的权限配置中使用该列作为键。

此包非常简单,非常简单。您不必使用包含的特质,可以复制粘贴它们内部的代码,甚至可以自定义它们以适应您自己的模型。

安装

使用 composer 安装此包

composer require ondrejbakan/permissions

包下载完成后,通过打开 config/app.php 并进行以下更改来添加服务提供者

providers 数组添加新项

OndrejBakan\Permissions\PermissionsServiceProvider::class,

将特质添加到您的用户模型中

use OndrejBakan\Permissions\Traits\HasRoles;

class User extends Model
{
    use HasRoles;
}

将特质添加到您的角色模型中

use OndrejBakan\Permissions\Traits\HasPermissions;

class Role extends Model
{
    use HasPermissions;
}

使用以下命令发布配置

php artisan vendor:publish

在 Laravel 的配置文件夹中打开并编辑 ondrejbakan/permissions/config.php,例如

<?php

    return [
        'permissions' => [
            'admin' => [
                'posts.create',
                'posts.read',
                'posts.update',
                'posts.delete',
            ],
            'user' => [
                'posts.read',
            ],
        ]
    ];

使用方法

此包所做的只是将简单的权限注册到 Laravel 的 Gate 中,因此您可以通过文档中描述的标准 Laravel 授权方法进行检查,例如

$user->can('posts.create');

就是这样。正如我所说的,此包非常简单,没有任何魔法。另一方面,它不会破坏您的数据库,也不会强迫您使用他人的数据库结构。