朕的大清完了
identity 持有的是 main.php 中配置的 user 的 identityClass的实例对象,如果要给其赋予自定义字段,就需要在对应的 identityClass 的类上加。
如:
'user' => [ 'identityClass' => backend\models\User::className(), ], // ------------------------------------------------------ namespace backend\models; class User implements IdentityInterface { public $prop1; public $prop2; } // ------------------------------------------------------ // 然后才可以 \Yii::$app->user->identity->prop1=$prop1; \Yii::$app->user->identity->prop2=$prop2;
是这样,后来嫌麻烦又放缓存里面读取了。 尴尬.jpg
配置里这一段熟悉吗?
`
'components' => ['user' => [ 'identityClass' => backend\models\User::className(), 'enableAutoLogin' => false, 'identityCookie' => ['name' => '_backend_identity'], 'idParam' => '__backend__id', 'returnUrlParam' => '_backend_returnUrl', ], ……
`
然后
$user = \Yii::$app->user->identity;
User里有什么属性你就可以用什么了~不行!这样直接提示基类没有aaa bbb这些成员变量 ,继承了,也设置了aaa bbb 还是不行
配置里这一段熟悉吗?
`
'components' => ['user' => [ 'identityClass' => backend\models\User::className(), 'enableAutoLogin' => false, 'identityCookie' => ['name' => '_backend_identity'], 'idParam' => '__backend__id', 'returnUrlParam' => '_backend_returnUrl', ], ……
`
然后
$user = \Yii::$app->user->identity;
User里有什么属性你就可以用什么了~不熟悉呀,大佬你这都是初始化配置以及修改默认前缀的
要在这里初始化属性吗?'user' => [ 'identityClass' => backend\models\User::className(), 'enableAutoLogin' => false, 'aaa' => 10000, 'bbb' => 20000', ],
然后 \Yii::$app->user->identity->aaa=$aaa
是这样吗
- 朕的大清完了 2019-05-28 已签到连续签到6天,获得了20个金钱