jairogarcíarincón

Enrutando la home


1.41K

Introducción



Actualmente al entrar en la dirección de la home, vemos que nos aparece algo cómo lo siguiente:

Laravel Auth
Fuente: Elaboración propia


¿De dónde sale esta vista?

Básicamente, es la única ruta que puedes ver registrada en el archivo routes/web.php:



A medida que vayamos desarrollando el proyecto iremos añadiendo rutas a este fichero.

En este caso, cada vez que el usuario introduce la ruta de la home, Laravel le encamina directamente a la vista mediante el método view() , sin pasar por ningún controlador o acción concreta. Fíjate además que basta con poner el nombre de la vista (welcome) para que Laravel sepa que tiene que buscar dentro de la carpeta resources/views un archivo con ese nombre seguido de .blade.php.


Blade



Las plantillas Blade son la forma más sencilla de construir vistas en Laravel intercalando contenido PHP y HTML.

Si bien no estás obligado a usarlas y puedes usar PHP como hasta ahora, lo cierto es que una vez que te acostumbre verás que es mucho más sencillo construir las plantillas de esta manera. Puedes encontrar toda la información en ESTA DIRECCIÓN.


Enrutar la home a una acción de un controlador



De forma similar a como hicimos en el CMS desde cero, vamos a modificar el archivo de rutas para que antes de mostrar la vista de la home pasemos por una acción del controlador, de modo que después podamos recoger las noticias a través del modelo correspondiente.

Modifica el archivo routes/web.php:



Como ves, hemos modificado la ruta de modo que llame a la acción index() dentro del controlador AppController. Además, hemos dado un nombre a la ruta para poder identificarla fácilmente a la hora de construir enlaces.

El siguiente paso sería crear el controlador (archivo app/Http/Controllers/AppController.php), que extenderá al Controller principal e incluirá dicha acción, así como la llamada a la vista correspondiente:



Si nos fijamos en la llamada a la función view() dentro del método index(), vemos que hace referencia a la vista app.index. Esto le indica a Laravel que dentro de resources/views debe buscar una carpeta llamada app y dentro de ella el archivo index.blade.php.

Por tanto, solo nos quedaría crear dicho archivo resources/views/app/index.blade.php y añadirle cualquier texto (Hello World, por ejemplo) para comprobar que la ruta funciona correctamente.

En el siguiente apartado crearemos el layout del front-end y se lo añadiremos al archivo resources/views/app/index.blade.php recién creado.


Publicado el 21 de Mayo de 2022

bloggestor de contenidoslaravelphpcssjquery