Contenido del curso

Manos a la obra con nuestro proyecto

Rutas básicas en Laravel con web.php

Resumen

Definir rutas en Laravel es el primer paso para que tu aplicación responda a las peticiones del navegador. Todo el flujo web pasa por el archivo web.php, donde decides qué URL atiende cada petición y qué respuesta entrega tu sistema.

Aquí vas a entender cómo se configuran las rutas básicas, cómo manejar parámetros dinámicos y cómo capturar solicitudes HTTP usando la clase Request. Es contenido pensado para quien empieza con Laravel y necesita una base sólida antes de construir controladores o vistas.

¿Por qué se trabaja en web.php y no en index.php?

El archivo index.php es el punto de entrada que permite el acceso web a tu proyecto, pero no es donde tú escribes tu lógica. Tu trabajo real comienza en la carpeta de rutas, específicamente en web.php.

Cuando registras una ruta en este archivo, Laravel activa automáticamente todo lo necesario para el entorno web: estados de sesión, protección de formularios contra CSRF y otras configuraciones propias del navegador.

Laravel separa los archivos de rutas según el canal de comunicación:

  • web.php para respuestas web tradicionales con sesiones y vistas.
  • api.php para construir una API independiente.
  • console.php para comandos ejecutados desde terminal.
  • Un archivo aparte para canales de transmisión de eventos en tiempo real.

Como el enfoque acá es la respuesta web, todo el desarrollo se concentra en web.php [1:00].

¿Qué hace el archivo web.php en Laravel? Es el archivo donde defines las rutas que responden a peticiones del navegador. Activa sesiones, protección de formularios y todo el contexto web necesario para tu aplicación.

¿Cómo se escribe una ruta básica con GET, POST, PUT y DELETE?

Las rutas en Laravel responden a los métodos HTTP estándar, y cada uno tiene un propósito claro dentro de tu aplicación.

  • GET se usa para consultar información.
  • POST altera la base de datos para guardar nueva información.
  • PUT actualiza datos existentes.
  • DELETE elimina registros.

Puedes documentar cada bloque con un comentario corto que explique su intención, y eso mismo te sirve como referencia rápida cuando vuelvas al archivo más adelante [2:00].

Una ruta básica con GET se ve así:

php Route::get('/', function () { return view('welcome'); });

En este caso, la raíz del sitio devuelve la vista welcome.blade.php, ubicada en la carpeta de vistas. Si cambias la ruta a /blog y devuelves un texto, al visitar esa URL en el navegador verás exactamente esa respuesta [3:00].

¿Cómo recibir parámetros dinámicos en una ruta?

Laravel permite capturar segmentos variables de la URL usando llaves. Esto es útil cuando una ruta debe responder con contenido distinto según el valor recibido, como el slug de una publicación.

php Route::get('/blog/{slug}', function ($slug) { // simular consulta a base de datos return $slug; });

Si visitas /blog/php, la ruta toma php como valor del slug y lo procesa. Así la URL empieza a tener sentido semántico: estás visitando una publicación específica dentro del blog del sitio [4:00].

¿Qué es un slug en una ruta? Es un identificador legible que aparece en la URL para señalar un recurso específico, como el título de una publicación. Laravel lo captura como parámetro y lo pasa a tu función.

¿Cómo manejar solicitudes HTTP con la clase Request?

Cuando un usuario envía datos a través de una URL —por ejemplo, una búsqueda con parámetros de consulta—, necesitas capturar esa información dentro de tu ruta. Para eso, Laravel ofrece la clase Request.

Primero importas la clase al inicio del archivo:

php use Illuminate\Http\Request;

Luego defines la ruta y recibes la instancia de Request como parámetro. Laravel resuelve la inyección automáticamente.

php Route::get('/buscar', function (Request $request) { return $request->all(); });

Si visitas /buscar?query=php, el método all() devuelve todos los datos enviados en la petición, en este caso el parámetro query con valor php [5:00].

Esta es la forma estándar de resolver peticiones a nivel web: el sistema pregunta qué necesita el usuario, procesa esa solicitud y entrega una respuesta. Si estuvieras construyendo un buscador real, aquí escribirías la lógica que consulta tu base de datos y arma la respuesta esperada.

¿Para qué sirve $request->all() en Laravel? Devuelve todos los datos enviados en la petición HTTP, incluyendo parámetros de la URL y campos de formulario. Es útil cuando quieres ver o procesar todo lo que envió el usuario.

¿Por dónde empieza siempre el desarrollo en Laravel?

Cada solución que construyas en Laravel arranca con la definición de una ruta. A partir de ahí desarrollas la lógica y das forma a la respuesta que entregará el sistema.

El flujo es claro: la petición entra por index.php, el sistema verifica que la ruta exista en web.php, y si la encuentra, ejecuta la función asociada y devuelve la respuesta. Sin ruta, no hay respuesta.

Practica creando rutas con distintos métodos HTTP, recibiendo parámetros dinámicos y capturando solicitudes con Request. Cuéntame en los comentarios qué tipo de ruta vas a construir primero en tu proyecto.