cakephp auth-> loginRedirect para admin

Soy bastante nuevo en CakePHP y he leído todos los tutoriales en el sitio de la torta. Estoy construyendo una pequeña aplicación de ejemplo con Cake 2.1 y he encontrado un problema. Básicamente, quiero que los usuarios administradores sean redirigidos a una página diferente al iniciar sesión, de lo que un usuario normal redirige. Estoy seguro de que hay una manera fácil de hacer esto, ¡pero estoy luchando!

Tengo habilitado el enrutamiento de administrador y estoy usando el componente de autenticación (y el componente de ACL, aunque eso no afecta mi problema). Tengo 2 inicios de sesión, uno para admin - admin_login () y un inicio de sesión para usuarios normales - login () - el inicio de sesión normal sin administrador funciona bien.

En mi AppController.php tengo esto:

class AppController extends Controller {

public $components = array(
    'Acl',
    'Auth' => array(
        'authorize' => array(
            'Actions' => array('actionPath' => 'controllers')
        )
    ),
    'Session'
);
public $helpers = array('Html', 'Form', 'Session');

public function beforeFilter() {
    //Configure AuthComponent
    $this->Auth->allow('display'); // Allows access to the homepage of the app
    $this->Auth->loginAction = array('controller' => 'users', 'action' => 'login');
    $this->Auth->logoutRedirect = array('controller' => 'users', 'action' => 'login');
    $this->Auth->loginRedirect = array('controller' => 'posts', 'action' => 'add');
}

}

Entonces, como puede ver, el valor predeterminado es que los usuarios sean redirigidos al iniciar sesión en la función add () de los controladores de las publicaciones, lo que funciona bien. Sin embargo, ¿cómo puedo configurar una redirección de inicio de sesión diferente para mi función admin_login ()?

He leído una serie de publicaciones aquí, pero la mayoría están relacionadas con versiones anteriores de la torta y no con la torta 2.

Si ayuda, esta es mi función admin_login en el UsersController.php

public function beforeFilter() {
    parent::beforeFilter();
    $this->Auth->allow('logout');
}

public function admin_login() {
    if ($this->request->is('post')) {
        if ($this->Auth->login()) {
            if ($this->Session->read('Auth.User')) {
                $this->Session->setFlash('You are logged in!');
                //$this->redirect($this->Auth->redirect());

                // This doesnt work! Grrrrrr
                //$this->redirect(array('controller'=>'pages', 'action'=>'admin_index'));

                // This nearly works...
                if($this->Auth->user())$this->redirect(array('controller' => 'pages', 'action' => 'admin_index'));
            }            
        }
        else {
            $this->Session->setFlash('Your username or password was incorrect.');
        }
    }

¿Podría alguien apuntarme en la dirección correcta?

Respuestas a la pregunta(2)

Su respuesta a la pregunta