gsdw / permission
Laravel权限增强
dev-master
2016-05-16 06:38 UTC
Requires
- php: >=5.3.0
- gsdw/base: 0.1.*
This package is not auto-updated.
Last update: 2024-09-20 22:26:08 UTC
README
简介
安装
在composer.json中添加代码
"require": {
"gsdw/permission": "0.1.*"
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/gsdw/permission"
}
],
设置
添加提供者
在config/app.php中添加提供者
Gsdw\Permission\Providers\PermissionServiceProvider::class,
更改用户模型
将用户模型更改为Gsdw\Permission\Models\User
-
在文件
config/auth.php
中'providers' => [ 'users' => [ 'driver' => 'eloquent', 'model' => Gsdw\Permission\Models\User::class ], ]
-
在文件
app\Http\Controllers\Auth\AuthController.php
中
创建表
在迁移中使用此代码
$migrate = new \Gsdw\Permission\Database\Migrate();
$migrate->up();
路由集合名称
创建文件config/routeas.php
,添加路由别名数据
return [
'route.alias.name' => 'route custom name',
]
视图
- 默认布局:layouts.default
- 在body结束标签之前添加
@yield('scriptCode')
- 将public目录下的所有文件复制到root_folder/public
代码
-
具有
auth.
前缀名称的路由用于检查验证权限 -
使用
class Gsdw\Permission\Helpers\Auth
- 验证授权:Auth::getSelf()->validateRule();
- 获取当前路由的作用域:Auth::getSelf()->getScopeCurrent();
- 检查是否是作用域自我:Auth::getSelf()->isScopeSelf();
- 检查是否是作用域团队:Auth::getSelf()->isScopeTeam();
- 检查是否是作用域公司:Auth::getSelf()->isScopeCompany();
注销功能
注销时刷新会话 \Gsdw\Permission\Helpers\Auth::getSelf()->flushPermission();
public function logout() {
Auth::guard($this->getGuard())->logout();
\Gsdw\Permission\Helpers\Auth::getSelf()->flushPermission();
return redirect(property_exists($this, 'redirectAfterLogout') ? $this->redirectAfterLogout : '/');
}