Как определить тип пользователя и перенаправить их на разные страницы при входе в систему?

В настоящее время у меня есть довольно стандартная функция входа в систему в UsersController, и он в настоящее время просто перенаправляет кого-либо на мою страницу продуктов, когда они входят в систему. Как мне сделать что-то вроде if($this->$user = 'consumer') //redirect to consumer products

Вот моя текущая функция входа

public function login(){

if($this->request->is('post')) {

if ($this->Auth->login()){
return $this->redirect($this->Auth->redirect(
array('controller' => 'Products', 'action' => 'index')));
}

$this->Session->setFlash(__('Incorrect username or password.'));
}
}

0

Решение

Используя cakephp AuthComponent, он позволит вам получить доступ к различным пользовательским полям, используя

$this->Auth->user('User.fieldname');

Допустим, у меня есть поле «тип», в котором будет сохранен тип пользователя!

switch ($this->Auth->user('User.type')){
case 'customer':
$this->redirect(array('controller'=>'products','action'=>'index'));
break;
case 'super_admin':
$this->redirect(array('controller'=>'administration','action'=>'index'));
break;
default:
$this->Auth->logout();
break;
}

надеюсь, это помогло тебе.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector