首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有对dektrium用户管理索引操作的权限

没有对dektrium用户管理索引操作的权限
EN

Stack Overflow用户
提问于 2018-04-07 22:16:57
回答 1查看 673关注 0票数 0

我安装了dektrium用户,但是当重写AdminController.php并试图到达admin/index时,我得到的是Forbidden(403)。将行为重写为:

代码语言:javascript
复制
'rules' => [
        [
           'allow' => true,
           'roles' => ['?'],
       ],
],

错误仍然是一样的。这么做是因为我还没有任何角色。是什么导致了这种行为?我的目标是原版index.php ( dektrium\yii2-user模块中的)。谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-04-08 12:11:49

您需要遵循这些规则来覆盖dektrium-user的控制器。

directory structure

如果您想要将其放入前端,则可以更改以下内容,只需更改启动文件夹

代码语言:javascript
复制
- backend
   - controllers
     - user
       - AdminController

user模块在module部分下的配置如下所示

代码语言:javascript
复制
'modules' => [
  ..............
    'user' => [
            'controllerMap' => [
                'admin' => 'backend\controllers\user\AdminController' ,
            ] ,

为了用新的操作index覆盖控制器,您的最低代码应该如下所示

AdminController

代码语言:javascript
复制
<?php 

namespace backend\controllers\user;
use dektrium\user\controllers\AdminController as BaseAdmin;

class AdminController extends BaseAdmin {

    public function behaviors() {
        $behaviours = parent::behaviors ();
        $behaviours['access']['rules'][] = [
            'allow' => true ,
            'actions' => [ 'index' ] ,
            'roles' => [ '?' ]
        ];
        return $behaviours;
    }

    public function actionIndex(){
        return $this->render('index');
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49712480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档