2014-09-18 21:15:52 10833次浏览 3条回答 1 悬赏 5 金钱

在web.php配置里面,user组件里面可以配置identityClass选项是用那个用户类认证,我现在后台是用的一个module,我怎么让我的前途和后台的user的identityClass选项用不同的用户类?
我试着在module的components里面试图重新定义,我看不会覆盖啊!

补充于 2014-09-22 11:23

我的做法是在模块初始化的时候添加一行:Yii::$app->user->identityClass = 'app\models\User2';

最佳答案

  • 大裤衩子 发布于 2014-09-19 12:00 举报

    前后台的主配置文件不一样啊,在backend和frontend的main.php里分别指定就可以了,注意和common/config/main.php merge的顺序

    3 条回复
    回复于 2014-09-22 10:41 回复

    我试过个不行,不会覆盖前面的配置。

    回复于 2014-09-22 15:29 回复

    是我理解错了你的意思!

    回复于 2016-07-19 11:17 回复

    意思是后台再配置一个配置文件吗,配置文件具体怎么写,直接在Modules.php引入吗

  • 回答于 2014-11-26 11:17 举报

    引用来自 大裤衩子 的评论

    前后台的主配置文件不一样啊,在backend和frontend的main.php里分别指定就可以了,注意和common/config/main.php merge的顺序

    我在index.php 中打印出$config
    ["user"]=>

    array(2) {
      ["identityClass"]=>
      string(19) "backend\models\User"
      ["enableAutoLogin"]=>
      bool(true)
    }
    

    这里写的是调用 backend\models\user 可是登录的时候还是调用的 common\models\User 类

  • 回答于 2017-05-17 22:23 举报

    亲测有用 Yii::$app->user->identityClass = 'app\models\User2';

您需要登录后才可以回答。登录 | 立即注册
dyllen
经理

dyllen

注册时间:2014-09-09
最后登录:2020-10-16
在线时长:48小时47分
  • 粉丝8
  • 金钱400
  • 威望80
  • 积分1680

热门问题