cakephp authentication login user cakephp-1.3

¿Cómo utilizo una tabla que no sea "Usuarios" para AuthComponent de CakePHP?



authentication login (1)

El AuthComponent de CakePHP supone que tienes una tabla de Usuarios que contiene un nombre de usuario y una contraseña. Me gustaría encontrar una forma de anular el nombre de tabla predeterminado de Usuarios a Cuentas.

Información de antecedentes:

La forma en que diseñé mi base de datos es tener una tabla de Usuarios y una tabla de Cuentas.

Cuentas :

  • carné de identidad

  • identidad de usuario

  • usuario

  • contraseña

  • servicio de autenticación (por ejemplo, mi sitio, Facebook, Google, OpenID , etc.)

Usuarios :

  • simplemente tiene toda la información personal del usuario (edad, sexo, etc.)

La razón de esto es que

  1. cada usuario puede tener múltiples cuentas de las que puede iniciar sesión para que no estén bloqueadas en una
  2. Puedo conectar los servicios de terceros a una cuenta para obtener más asombrosidad

Ahora volvamos al problema ...

CakePHP tiene documentación sobre cómo cambiar el nombre de campo predeterminado, pero no puedo encontrar nada al cambiar el nombre de tabla predeterminado, pero supongo que sería similar en naturaleza ...

Ejemplo de cambiar el nombre de campo predeterminado:

function beforeFilter() { $this->Auth->fields = array( ''username'' => ''username'', ''password'' => ''secretword'' ); }

¿Hay alguna manera de lograr esto o debería reestructurar las tablas manteniendo la convención de CakePHP y aún lograr lo mismo?


En app_controller.php:

function beforeFilter() { $this->Auth->userModel = ''Account''; }