【发布时间】:2018-11-01 00:08:32
【问题描述】:
我有AdminController 和behavior:
public function behaviors()
{
return [
'access' => [
'class' => AccessControl::className(),
'rules' => [
[
'actions' => ['login'],
'allow' => true,
'roles' => ['*'],
],
[
'actions' => ['index', 'logout'],
'allow' => true,
'roles' => ['admin', 'editor', 'expert'],
],
[
'actions' => ['update', 'delete'],
'allow' => true,
'roles' => ['admin'],
]
]
],
'verbs' => [
'class' => VerbFilter::className(),
'actions' => [
'logout' => ['get'],
],
],
];
}
然后我创建子控制器:
- 默认控制器
- inf-courses 控制器
- 和其他
如何在父级 (AdminController) 上使用规则,然后它的工作原理?
如果我在deafult 中添加类似的规则,它会起作用,但全局不会。
附:我做管理面板并想要下一个:
- 任何人都可以尝试登录
- 访问管理面板:['admin', 'editor', 'expert']
- 登出只能['admin', 'editor', 'expert']
这是所有模块 admin 与父 AdminController 的全局规则。
谢谢。
【问题讨论】:
标签: yii2 access-control