navatech / yii2-user-role
1.0.0.3
2019-02-20 03:36 UTC
Requires
- dektrium/yii2-user: @dev
- navatech/yii2-navatech-base: @dev
This package is auto-updated.
Last update: 2023-01-09 17:10:41 UTC
README
安装
composer require navatech/yii2-user-role "@dev"
运行迁移
如果你之前从未使用过dektrium/yii2-user
,你应该运行它
php yii migrate/up --migrationPath=@vendor/dektrium/yii2-user/migrations
php yii migrate/up --migrationPath=@navatech/role/migrations
配置
在配置文件中
[php]
'modules' => [
'user' => [
'class' => 'dektrium\user\Module',
'modelMap' => [
'User' => 'navatech\role\models\User',//IMPORTANT & REQUIRED, change to your User model if overridden
'LoginForm' => 'navatech\role\models\LoginForm',//IMPORTANT & REQUIRED
],
],
'role' => [
'class' => 'navatech\role\Module',
'controllers' => [ //namespaces of controllers
'app\controllers',
'navatech\role\controllers',
],
],
],
在User模型中,如果你覆盖了它
class User extends \navatech\role\models\User
在每个你想检查角色的控制器中
class SiteController extends Controller {
public function behaviors() {
return [
'verbs' => [
....
],
'role' => [
'class' => RoleFilter::className(),
'name' => 'Trang chủ', //NOT REQUIRED, only if you want to translate
'actions' => [
'create', //without translate
'index' => 'Danh sách', //with translated, which will display on role _form
],
],
];
}
}
在所有地方
use navatech\role\helpers\RoleChecker;
...
//public static function isAuth($controller, $action = '', $role_id = null)
$boolean = RoleChecker::isAuth(SiteController::className(), 'index', Yii::$app->user->identity->getRoleId());