2015-08-11 5 views
3

Я работаю с Yii2 и просто не могу разделить пользователей. Мое приложение имеет два модуля.Отдельные пользователи в базовом шаблоне Yii2

Это мой конфиг из web.php:

'frontendUser' => [ 
     'class' => 'yii\web\User', 
     'identityClass' => 'app\models\User', 
     'enableAutoLogin' => false, 
     'loginUrl' => ['frontend/default/index'], 
], 
'user' => [ 
     'identityClass' => 'app\models\Owner', 
     'enableAutoLogin' => false, 
     'loginUrl' => ['arena/default/login'], 
], 

Проблема заключается в том, когда я войти с одним из выше, как Yii :: $ app-> user-> isGuest и Yii :: $ app-> frontendUser-> isGuest возвращает истину, и стал авторизован.

Я нашел решения только для продвинутого шаблона ...

Спасибо,

ответ

3

Вам нужно настроить несколько больше, чем что ты сделал.

Как и сейчас, они сохраняют одни и те же переменные в вашей сессии, и оба они используют один и тот же файл cookie.

'frontendUser' => [ 
    'class' => 'yii\web\User', 
    'identityClass' => 'app\models\User', 
    'enableAutoLogin' => false, 
    'loginUrl' => ['frontend/default/index'], 
    'identityCookie' = ['name' => '_feIdentity', 'httpOnly' => true], // THIS 
    'idParam' => '__feId', // THIS 
    'authTimeoutParam' => '__feExpire', // THIS, only if you want to keep separate expiry times 
], 
'user' => [ 
    'identityClass' => 'app\models\Owner', 
    'enableAutoLogin' => false, 
    'loginUrl' => ['arena/default/login'], 
], 

Это направляет стороннего пользователя использовать разные переменные для хранения/извлечения данных, эффективно разделяя их на другого пользователя.

Посмотрите на документацию yii\web\User.

+0

Удивительный, большое спасибо! – Andris

+0

Спасибо вам очень много! –

Смежные вопросы