tadeas-j / permissions
此包最新版本(dev-master)没有提供许可证信息。
为Laravel 5提供的简单权限。
dev-master
2015-04-09 17:42 UTC
This package is not auto-updated.
Last update: 2024-10-02 07:54:49 UTC
README
一个简单的Laravel 5权限包。
通过Composer安装
require : {
"tadeas-j/permissions": "dev-master"
}
接下来,你需要执行以下操作。
composer update
现在,你已经成功安装了此包。
下一步是需要在Laravel应用的配置文件('app/config/app.php')中添加包的服务提供者。
'Permissions' => 'Permissions\Providers\PermissionsProvider'
最后,为了配置我们的权限和角色,我们需要将'config.php'文件发布到'/config/permissions/config.php'。
php artisan vendor:publish
(可选)使用包的facade
强烈建议使用包预定义的facade,你只需要在'app/config/app.php'中注册它。
'Permissions' => 'Permissions\Facades\Permissions'
(重要)配置
配置文件应发布到'/config/permissions/config.php'。如果你错过了,你可以通过调用以下命令轻松完成。
php artisan vendor:publish
首先,你需要将'role'列添加到你的用户表中。默认的'config.php'文件如下所示。
$aliases = array(
'manage' => ['create', 'delete', 'edit']
);
$roles = array(
'admin' => [
'manage.users',
]
);
这意味着,角色'admin'允许管理用户,'manage'是'create'、'delete'和'edit'的别名。所以这和下面是一样的。
$aliases = array();
$roles = array(
'admin' => [
'create.users',
'delete.users',
'edit.users',
]
);
使用包
让我们考虑一下,我们有一个具有'admin'角色的用户,'admin'角色允许'create.users',下面的代码正是我们创建过程中需要执行的。
Permissions::can('create.users');
这将获取我们的登录用户,他的权限,然后检查它们。如果我们想检查ID为1的用户权限,我们只需简单地这样做。
Permissions::can('create.users', User::find(1));
还有一个你可以使用的特性。
Permissions\PermissionsTrait
在你将此特性用于用户模型后,你将可以执行如下操作。
Auth::user()->can('create.users');