袋鼠 / laravel-acl
为Laravel 5自带的Auth系统构建的轻量级基于角色的权限。
v0.1.3
2015-03-17 04:36 UTC
Requires
- php: >=5.4.0
- illuminate/database: 4.2.x|~5.0
- illuminate/support: 4.2.x|~5.0
This package is not auto-updated.
Last update: 2024-09-14 18:26:08 UTC
README
Laravel ACL为Laravel 5自带的Auth系统添加了基于角色的权限。ACL中间件可以保护路由和CRUD控制器方法。
目录
要求
- 此包需要PHP 5.4+
入门
- 在您的
composer.json中要求此包,并通过composer update更新依赖项。
"require": {
...
"kodeine/laravel-acl": "~1.0@dev",
...
},
- 将包添加到您的应用程序服务提供者
config/app.php中。
'providers' => [ 'Illuminate\Foundation\Providers\ArtisanServiceProvider', 'Illuminate\Auth\AuthServiceProvider', ... 'Kodeine\Acl\AclServiceProvider', ],
- 将包迁移发布到您的应用程序,并使用`php artisan migrate`运行这些迁移。
$ php artisan vendor:publish --provider="Kodeine\Acl\AclServiceProvider"
使用您自己的模型。发布后,它会发布一个配置文件,您可以在其中定义自己的模型,这些模型应扩展到Acl模型。
- 将中间件添加到您的
app/Http/Kernel.php。
protected $routeMiddleware = [ .... 'acl' => 'Kodeine\Acl\Middleware\HasPermission', ];
- 将HasRole特质添加到您的
User模型。
use Kodeine\Acl\Traits\HasRole; class User extends Model implements AuthenticatableContract, CanResetPasswordContract { use Authenticatable, CanResetPassword, HasRole; }
文档
请参考Wiki以获取更多信息。
路线图
以下是下一个版本(2.0)的待办事项列表。
- 重构源代码。
- 纠正所有问题。
- 为最终用户权限添加缓存。
- 添加测试。
变更日志
2015年6月14日(最新版本)
- 为lists()方法添加了l5.0的向后兼容性。
- 添加了Blade模板扩展。
2015年3月28日
- 添加了Role Scope以获取具有特定角色的所有用户。例如,
User::role('admin')->get();将列出所有具有admin角色的用户。
2015年3月7日
贡献指南
支持PSR-2 PHP编码标准和语义版本控制。
请在问题页面报告您发现的所有问题。欢迎提交拉取请求。