Advertisement
  1. Code
  2. Laravel 5

Nuevas funciones en Laravel 5.2

Scroll to top
Read Time: 5 mins

Spanish (Español) translation by Elías Nicolás (you can also view the original English article)

En este artículo, echaré un vistazo a las nuevas características de Laravel 5.2 y las describiré una por una. Las nuevas características se enumeran a continuación:

  • Vinculación de modelo de ruta implícita
  • Validación de array en formularios
  • limite de velocidad API en middleware
  • Grupos de middleware
  • Andamiaje de autenticación
  • Controladores de autenticación múltiples

Varios controladores de autenticación

Esta característica le ayudará, especialmente cuando necesite tener Doctrine ORM Auth con múltiples proveedores. En mis proyectos prefiero tener la autenticación de administrador y de usuario separada entre sí; Esta característica me ayudará a lograr esto fácilmente. Veamos un ejemplo config/auth.php:

Ahora, cuando utiliza Auth::attempt([...]), Laravel llamará al protector predeterminado; Así que si quieres usar un guardia específico, sólo tienes que llamar con su nombre, como Auth::guard('admin').

Para la autenticación en su grupo de ruta con un guardia específico, sólo puede llamar al nombre del guardia:

A veces, en lugar de un simple inicio de sesión en tu aplicación, deseas que los usuarios agreguen un api_token al final de la cadena de consulta y lo utilicen para autenticar su solicitud. El TokenGuard le permitirá lograr esto fácilmente.

Si desea utilizar la autenticación token, primero debe agregar un campo api_token único de 60 caracteres a la tabla de la base de datos del modelo seleccionado (entidad en doctrine). Ahora puedes utilizar fácilmente api guard en tu aplicación.

Vinculación de modelo de ruta implícita

Una de las nuevas características muy práctica de Laravel 5.2 es el enlace de modelo de ruta. Puede vincular el modelo a su ruta; Antes de esto, lo teniamos que crear manualmente:

O puede hacer algo como:

Laravel 5.2 lo hace aún más fácil. Simplemente pasa un parámetro en el cierre de la ruta y lo tratará automáticamente como un enlace de modelo de ruta:

Ahora es más fácil vincular el modelo a su ruta.

De forma predeterminada, Laravel utiliza la columna id del modelo. Pero si usted espera que cambie la asignación, puede cambiar su modelo así:

Eloquent implementa el contrato Illuminate\Contracts\Routing\UrlRoutable, por lo que puede anular el método getRouteKeyName(). Define qué columna se debe utilizar para buscar desde una URL.

Grupos de middleware

Como se puede ver en la sección anterior, hemos creado un guarda diferente para usuario y administrador. En este caso, si desea asignar varios middleware a un grupo de rutas de usuario o a su grupo de rutas de administración, Laravel 5.2 le permite crear un acceso directo con un nombre de clave.

Para definir el grupo de middleware, debe modificar el kernel.php en su carpeta https:

Y ahora puede utilizarlo fácilmente en su grupo de rutas.

limite de velocidad API con middleware

Si utiliza la API de otra aplicación como GitHub, para solicitudes con Autenticación básica o OAuth, puede realizar hasta 5.000 solicitudes por hora. Este limite se llama limite de velocidad. Si quieres tener algo como esto en tu aplicación, puedes usar la nueva característica de Laravel 5.2. Laravel 5.2 agregó un nuevo middleware throttle que manejará el limite de velocidad. Por ejemplo, puedes tener algo como:

Por defecto, el middleware del throttle permite 60 intentos por minuto en kernel.php:

Puede cambiarlo como desee o incluso personalizarlo para un enrutador específico:

Andamiaje de autenticación

Laravel 5.2 proporciona una manera rápida de analizar todo lo que necesita para la autenticación usando este comando:

El uso de este comando en su nueva aplicación creará vistas de registro e inicio de sesión, así como rutas para todas las autenticaciones. Mi archivo de ruta se ve así:

El método Route::auth() es un acceso directo a la definición de las siguientes rutas:

También se generará un HomeController, que es responsable de las solicitudes de inicio de sesión en el panel de control de la aplicación. Sin embargo, puede personalizar o eliminar este controlador en función de las necesidades de su aplicación.

Validación de array en formularios

Una de las cosas interesantes con las que he trabajado es la array de datos de formulario en HTML. Si coloca algo dentro de los corchetes, el array resultante se convierte en asociativo; De lo contrario, será numérica:

El resultado de PHP print_r($_POST) será:

Esto le ayudará a simplificar el proceso de validación y trabajar con formularios. Ahora vamos a ver la validación de nuestros campos de usuario en Laravel 5.2:

Usted puede haber notado que la forma de la validación es el name.*.last, con un asterisco en el medio, que casi indica que podría agregar la  clave de una array o cualquier otra cosa que pueda necesitar.

Conclusion

Laravel 5.2 fue un pequeño lanzamiento que puede permitirte trabajar mejor y más rápido. Como puede notar, muchas de estas características también son fáciles de aprender.

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.