Cargando



Rutas agrupadas en Laravel

En este tutorial veremos cómo podremos hacer una agrupación de rutas en una aplicación estándar hecha en Laravel.


sep 05 2014 05:21
Avanzado
sep 05 2014 18:13
Existen algunas ocasiones en las cuales necesitamos un prefijo en particular para poder acceder a algunos recursos en nuestra aplicación, por ejemplo cuando necesitamos consumir todo lo referente al perfil de un usuario.

Afortunadamente Laravel nos permite hacer lo que se llama rutas agrupadas con las cuales podemos bajo un mismo estilo de URL y valga la redundancia agrupar nuestras vistas con un prefijo con el cual sabremos que todos los llamados que se hagan por esa vía corresponderán a un controlador en particular.

¿Cómo hacer la agrupación de rutas?


Para lograr realizar esta actividad debemos realizar una instalación estándar de Laravel, dentro de la cuál vamos a realizar las siguientes acciones.

1- Primero debemos construir un filtro, dentro de este vamos a validar una variable de sesión que nuestra aplicación debe generar, con ello podremos tener un control simple de quien puede ver los recursos de nuestra ruta agrupada. Veamos en el siguiente ejemplo nuestro filtro, el cual debemos crear en el archivo filters.php:

laravel_rutas_agrupadas.jpg


Aquí vemos que hemos hecho una validación que como indicábamos, pregunta por una variable de sesión, si no la tenemos nos arroja un mensaje.

2- Vamos a crear ahora una ruta que nos ayude a establecer los valores de las variables de sesión que necesitamos, de esta manera podremos simular el funcionamiento de nuestro filtro y ver cómo se comporta nuestra aplicación, para ello vamos a hacer lo que vemos en el ejemplo en la siguiente imagen, en el archivo routes.php:


laravel_rutas_agrupadas2.jpg


Vemos acá entonces como establecemos la sesión, una vez hecho esto hacemos una re-dirección del usuario a la ruta perfil/usuario, esta será nuestra ruta agrupada que ya veremos en los próximos pasos.

3- Ahora debemos establecer la agrupación de las rutas, para ello vamos a crear una ruta normal pero en vez de colocar el método HTTP vamos a colocar la palabra group y dentro agregaremos el filtro que hemos realizado en el before, es decir, antes de ejecutar el resto del contenido de la ruta, a continuación crearemos el prefijo que regirá nuestro grupo, en el caso del ejemplo se llamará perfil,luego dentro de este grupo que hemos creado podremos construir todas las rutas deseadas. Veamos la imagen con el ejemplo para tener un mayor entendimiento:


laravel_rutas_agrupadas3.jpg


Adicionalmente dentro del ejemplo creamos dos rutas internas, usuarios que es la que nos mostrará un mensaje de acceso al perfil y tenemos una ruta llamada amigos, donde mostramos un mensaje que podría ser la lista de estos.

Rutas internas
Como vemos la agrupación de rutas es bastante sencilla, de hecho es prácticamente como crear una ruta normal, solo que en vez de llevar algún contenido cualquiera lleva otras rutas, con el caso del filtro lo colocamos en el grupo ya que queremos que afecte a todas las rutas internas, sin embargo cada ruta interna puede llevar sus propios filtros, de forma que podemos lograr mayor diferenciación.


Con esto finalizamos este tutorial donde hemos construido de forma exitosa una agrupación de rutas en una aplicación estándar de Laravel.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X