Я использую функцию входа в систему, как и следовало.CakePHP Login redirect admin/user
public function login()
{
if ($this->request->is('post')) {
$user = $this->Auth->identify();
if ($user) {
if ($user['warning'] == false) {
$this->Auth->setUser($user);
if ($this->Auth->user('role') == 'admin') {
if(isset($this->Auth->redirectUrl)){
return $this->redirect($this->Auth->redirectUrl());
}
else return $this->redirect(['controller' => 'adresses','action' => 'adminindex']);
} elseif ($this->Auth->user('role') == 'user') {
if(isset($this->Auth->redirectUrl)){
return $this->redirect($this->Auth->redirectUrl());
}
else return $this->redirect(['controller' => 'adresses','action' => 'index']);
}
}
else{
$this->Flash->error(__('XXXX'));
return $this->redirect(['action' => 'login']);
}
}
$this->Flash->error(__('XXXXX'));
}
}
У меня проблема сейчас в том, что я не могу показаться, чтобы зачитать redirectURL - потому что каждый раз, когда я приезжаю из Link, которая требует вошедшего пользователя я получаю перенаправлен на индекс АДРЕСА, который определяется в моем AppController. Но мне нужно, чтобы он перенаправлялся на adminindex.
Могу ли я переключить резерв для администратора и пользователя. Или кто-нибудь знает, как проверить, является ли redirectUrl isset?