Personalizar las tablas users y password_resets en Laravel 5.6

La autenticación en Laravel es un proceso muy sencillo, pero de tan sencillo personalizarlo tiene sus detalles, en este post veremos como personalizar, en parte, las tablas de usuarios y reinicio de contraseñas.


Según lo estricto que seas con la estructura de tu base de datos y el formato que hayas elegido seguir puede que los valores de los campos y las tablas por defecto de Laravel no sean de tu agrado, como es mi caso, por ejemplo: Laravel prefiere minúsculas y plurales para los nombres de las tablas, yo utilizo UpperCamelCase y singular. Para los nombres de los campos Laravel utiliza guión bajo (underscore) y minúsculas, yo prefiero lowerCamelCase, con lo cual, necesito renombrar los siguientes campos de estas tablas:
  • remember_token - rememberToken 
  • created_at - createdAt
  • updated_at  - updatedAt
  • id - userId
Y renombrar las tablas:
  • users - User
  • password_resets - PasswordReset
Si utilizas las migraciones de Laravel tienes que cambiar los nombres de las tablas y los campos en los archivos database/migrations/2016_01_01_000000_create_users_table.php y database/migrations/2016_01_01_100000_create_password_resets_table.php. Yo en mi caso no puedo utilizar migraciones porque uso SQL Server 2017 y mi tabla de usuarios es un nodo (graph database) actualmente no soportado por Eloquent.

Superado el paso de las migraciones vayamos al código para personalizar la tabla de usuarios, necesitamos modificar estos dos archivos:
  1. app/User.php
  2. app/Http/Controllers/Auth/RegisterController.php
Personalizar la tabla password_resets es un poco más complicado pero no imposible, los pasos para hacerlo están en el siguiente commit de github.

Espero que os ayude.

Comentarios

Anónimo ha dicho que…
Me funciono, muchas gracias