我在数据库中有两个不同的用户表(编辑器和用户).如您所知,用户表和编辑器表只是在模块中使用.
我使用这种方式在Yii 1.1中将模块和主应用程序之间的用户实例分开.
但是我在yii 2中找不到方法.我尝试扩展yii\web\User并在模块中更改用户类但结果相同.如果我登录模块,可以从模块外的任何地方访问相同的用户实例.
我的模块init如下:
public function init()
{
parent::init();
\Yii::$app->set('user', [
'class' => 'app\modules\yonetim\components\yonetimUser',
'identityClass' => 'app\models\Editor',
'enableAutoLogin' => true,
'loginUrl' => ['yonetim/default/login'],
]);
}
Run Code Online (Sandbox Code Playgroud)
我也这样试试; 在config.php中
'components' => [
'user' => [
'identityClass' => 'app\models\User',
'enableAutoLogin' => true,
],
'editor' => [
'class' => 'yii\web\User',
'identityClass' => 'app\models\Editor',
'enableAutoLogin' => true,
],
],
Run Code Online (Sandbox Code Playgroud)
但是这次我不使用授权角色(比如@)
如何在模块中使用不同的用户实例?