ge/lararole

"系统用户角色和权限管理"

dev-master 2018-06-28 20:37 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:55:17 UTC


README

Lararole 是一个用于管理网站/博客/网站的用户的角色和权限的包。通过使用此包,您将拥有角色和权限模块,您可以定义尽可能多的角色以及相应的权限,同时可以轻松地根据您的主题需求自定义主题。

请注意 此包假设您已经使用 Laravel 认证系统,并且您数据库中已经存在 users

安装

为了使用 Laravel,首先通过 Composer 拉取此包

composer require ge/lararole

您还可以将此包添加到您的项目的 composer.json 文件中。

"require": {
  "Ge/Lararole": "1.*",
}

在 composer.json 中添加包后,您需要更新 composer

composer update

然后,在 app/config/app.php 中包含服务提供者

'providers' => [
    Ge\Lararole\LararoleServiceProvider::class
];

如果您使用的是 Laravel 5.6,则可以跳过最后一步,因为 Laravel 的自动发现功能将自动添加

运行迁移

php artisan migrate

这将生成必要的数据库表

将用户模型设为可分配角色

打开用户模型,并为其添加可分配角色特质。

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Ge\Lararole\Ge\Rolable;

class User extends Authenticatable
{
    use Notifiable, Rolable;
}

一切准备就绪

现在您可以开始使用此包了

所有可用路由

模板自定义

当然,您可以根据您的站点主题自定义模板,您可以通过发布供应商到视图目录来覆盖模板

php artisan vendor:publish --provider=Ge\Lararole\LararoleServiceProvider::class --tag=views

有用方法

// all the roles has assigned to this user

$user = User::find(1);

foreach($user->roles as $role)
{
    echo $role->name . '</br>';
}


// list all the permissions has in role with ID 1

$role = Role::find(1);

foreach($role->permissions as $permission)
{
    echo $permission->name . '</br>';
}

祝您编码愉快...