2 回答

TA貢獻1830條經驗 獲得超9個贊
當我們在配置中添加多個身份時,請更改其idParam參數。
'user' => [
'class'=>'yii\web\User',
'identityClass' => 'frontend\models\CustomerUser',
'enableAutoLogin' => false,
'authTimeout' => 60*30,
'loginUrl' => ['customer/login'],
'idParam' => '__cid',
'identityCookie' => [
'name' => '_panelCustomer',
'httpOnly' => true,
],
],
'franchise' => [
'class'=>'yii\web\User',
'identityClass' => 'frontend\models\FranchiseUser',
'enableAutoLogin' => false,
'authTimeout' => 60*30,
'loginUrl' => ['franchise/login'],
'idParam' => '__fid',
'identityCookie' => [
'name' => '_panelFranchise',
'httpOnly' => true,
],
],

TA貢獻1826條經驗 獲得超6個贊
您選擇用戶的第一個組件,檢查以下內容:
$user = Yii::$app->get('franchise');
$user->identity
但是,為此目的的最佳解決方案是使用高級模板,并為用戶提供單獨的配置。
https://github.com/yiisoft/yii2-app-advanced
或者您可以在運行時使用模塊并更改 Module.php 內部的配置:
public function init() {
parent::init();
Yii::$app->setComponents([
'user' => [
'class'=>'yii\web\Franchise',
'identityClass' => 'frontend\models\FranchiseUser',
'enableAutoLogin' => false,
'authTimeout' => 60*30,
'loginUrl' => ['franchise/login'],
'identityCookie' => [
'name' => '_panelFranchise',
'httpOnly' => true,
],
],
]);
}
對另一個用戶模塊重復此操作。
- 2 回答
- 0 關注
- 212 瀏覽
添加回答
舉報