Cargando



Creando controladores y rutas en Laravel

En este tutorial veremos las bases y claves para crear los controladores y rutas cuando escribamos nuestras aplicaciones en Laravel.


ago 22 2014 17:08
Avanzado
ago 25 2014 11:06
Las aplicaciones hechas en Laravel contienen dos elementos muy importantes a la hora de analizar su estructura, uno de ellos son los controladores, estos son los que nos permiten enviar el contenido a las vistas, además de manejar el flujo de nuestra aplicación.

El segundo elemento importante son las rutas, con ellas al recibir las peticiones en nuestra aplicación, podemos indicar el camino a seguir o ejecutar acciones directamente independientemente del controlador. A pesar que pueden trabajar por separado, los mejores resultados los vemos cuando complementamos ambas secciones de nuestra aplicación.

Crear un controlador básico


Para crear una controlador simplemente debemos crear una clase que hereda de la clase base que Laravel dispone para nuestros controladores, dicha clase es BaseController, esta clase base solo contiene un método que es muy importante ya que es el que define como se debe pasar los datos a las vistas.

Una vez generado nuestro controlador, en el archivo routes.php podemos definir según la petición del usuario, que acción del controlador debemos enviar como respuesta, inclusive podemos utilizar varios métodos HTTP en este punto. Veamos un código ejemplo donde construimos un controlador básico:

laravel_cont_rutas.jpg


Como vemos hemos definido un par de acciones, ahora lo siguiente que debemos hacer es que estas acciones sean accedidas por un usuario, para ello creamos las rutas correspondientes:

Route::get('usuarios', 'UsuariosController@actionIndex');
Route::get('usuarios/sobre', 'UsuariosController@actionAbout');

Con esto ya cuando un usuario acceda vía URL y coloque usuarios accederá al primer método y cuando coloque usuarios/sobre accederá al segundo método, como vemos es bastante sencillo.

Creando una ruta


Hay sin embargo momentos en los cuales no necesitamos crear un controlador ya que todo lo que queremos hacer se resuelve en unas pocas líneas de código que no vamos a reutilizar, para ello podemos colocar la acción en la ruta directamente.

Closures
Para ello vamos a utilizar los llamados cierres o closures, que es una forma de empacar una llamada a un código que Laravel interpretará y hará que se ejecute directamente en la ruta, para ello luego del parámetro esperado vamos a colocar una nueva función y dentro de esta podremos colocar cualquier tipo de código o traer inclusive datos de nuestro modelo.


En esta parte debemos tener un poco de cuidado ya que podemos sin querer olvidarnos del paradigma MVC y terminar con una aplicación que funciona pero que no sigue las convenciones y los estándares necesarios. Veamos el código necesario:


laravel_cont_rutas2.jpg


Esto lo debemos escribir en el archivo routes.php, como vemos en este caso hemos colocado un par de variables y luego hemos retornado su concatenación, esto es solo una muestra de lo que podemos lograr. Notamos también que utilizamos los métodos HTTP para poder acceder a la acción necesaria, por ejemplo si accediéramos a esta ruta desde el método POST de HTTP la acción que vemos en el código no se ejecutaría.

Con esto hemos finalizado este tutorial, ya hemos aprendido un poco más acerca de los controladores y las rutas en nuestras aplicaciones hechas con 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