Проблема с перенаправлением входа в CakePHP? - PullRequest
0 голосов
/ 31 августа 2011

Привет! Я использую компонент CakePHP Auth для системы входа в систему. Мне бы хотелось, чтобы каждый раз, когда пользователь входил в систему, чтобы перенаправить его на страницу пользователей, но когда сеанс истекает, а пользователь снова входит, он перенаправляется на предыдущую страницу, на которой он находился, а не обратно на страницу пользователей. Надеюсь, вы меня понимаете. Это мой код.

контроллер приложения:

function beforeFilter() {
    $this->Auth->loginAction = array('admin' => false, 'controller' => 'users', 'action' => 'login');

    $this->Auth->loginRedirect = array('admin' => false, 'controller' => 'books', 'action' => 'index');

    $this->Auth->allow('display');
}

контроллер пользователя:

function login() {
            }

    function admin_logout() {
        $this->Session->destroy(); 
        $this->redirect($this->Auth->logout());

    }

Ответы [ 2 ]

2 голосов
/ 31 августа 2011

в beforeFilter в пользовательском контроллере, добавьте $this->Auth->autoRedirect = false; и

function login() {
    if($this->Auth->user())$this->redirect(array('controller' => 'books', 'action' => 'index'));
}
0 голосов
/ 31 августа 2011

Это довольно сложно, потому что я думаю, что компонент Session не позволит вам делать то, что вы хотите, пока вы не измените его, что вы можете сделать, это открыть config / core.php в вашем приложении и изменить ваш SecurityПеременные .level и Session.timeout должны быть длиннее, уровень безопасности работает как множитель для переменной тайм-аута, если она высокая, множитель составляет 10, 100, если она средняя, ​​и 300, если она низкая

...