Laravel 5: Middlewares con parámetros

laravel555

A veces tenemos la necesidad de crear middlewares con parámetros en laravel 5, el ejemplo más claro es el que ofrece la documentación, y es para controlar el acceso a la aplicación haciendo uso de roles de usuarios.

Si tienes dudas acerca de los middlewares en laravel 5 aquí tienes una entrada donde los explicamos de forma completa para un primer acercamiento.

En esta entrada vamos a ver lo sencillo que es crear un middleware que acepte parámetros, registrarlo en el kernel y utilizarlo en una ruta.

Lo primero que debemos hacer es crear nuestro middlware, el cuál será creado en el directorio app/Http/Middleware, para ello, utiliza el siguiente comando.


Ahora abre el middleware y reemplaza el código por el siguiente.


Simplemente pasamos el parámetro extra role a nuestro middleware y comprobamos si el usuario logueado tiene el mismo rol que hemos definido en la ruta que está intentando acceder, para este caso, contamos con que el usuario tiene un campo en la tabla users llamado role.

Curso de Laravel 5 desde 0

La ruta utilizada para este propósito es la siguiente.


En este caso, el rol al que le estamos dando acceso es editor, así que ese será el valor del parámetro del método handle de nuestro middleware.

Para que todo funcione, sólo nos queda hacer una cosa, y es registrar nuestro middleware en el archivo app/Http/Kernel.php con la siguiente línea.


Si registras un usuario con el role editor, haces login e intentas acceder a la ruta get post/1 o cualquier número, verás el mensaje logged with role: editor, así de sencillo.

Espero que te haya sido de ayuda y si es así te agradezco si compartes el post en las redes sociales.

4 Comentarios

    • israel965
    • JULIO CESAR
      • israel965

Añade un comentario

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información. ACEPTAR

Aviso de cookies
Descuentos de hasta el 50% por el Black Friday en CursosdesarrollowebAcceder ahora
+ +