Как сделать автоматический выход используя значение из БД
Столкнулся с проблемой
Я пытаюсь сделать auto lougout и использую данный код
'user' => [
'identityClass' => 'common\models\User',
'enableAutoLogin' => false,
'authTimeout' => '30', //секунды
'identityCookie' => ['name' => '_identity-backend', 'httpOnly' => true],
],
Все работае отлично
Здесь я определил authTimout статически. Но я хочу получить значение тайм-аута из базы данных и установить его в authTimeout.
Как это можно реализовать?
Ответы (1 шт):
Автор решения: Aleksey Stetsenko
→ Ссылка
Прямо в конфигурации можно задать по умолачнию, так как у вас в примере
'authTimeout' => '30', //секунды
Если вы хотите брать это значение из базы, единственный способ делать это после создания приложения, например в методе login
public function login()
{
if ($this->validate()) {
// Устанавливаем значение authTimeout с базы данных
Yii::$app->user->authTimeout = 'Запрос в базу на получения authTimeout';
return Yii::$app->user->login($this->getUser(), $this->rememberMe ? 3600 * 24 * 30 : 0);
}
return false;
}