08 💻Procesando Datos en Laravel del Formulario: Rutas POST, Directiva CSRF y Request en Laravel ⚙️
Duración: 17 minDescripción
🔍 Lección 08: Procesando Datos en Laravel del Formulario: Rutas POST, Directiva CSRF y Request ⚙️📊
En este octavo capítulo avanzamos en la lógica del formulario completando los tipos de inputs (text, number, file y selectores enum). Además, expandimos la localización del sistema habilitando el idioma portugués de Brasil y configuramos el flujo de datos hacia el backend mediante la creación de rutas de tipo POST, la inyección de la directiva de seguridad CSRF y el procesamiento del objeto Request en el controlador.
🎯 Lo realizado en este capítulo
- 🧾 Configuración Integral de Tipos de Entrada: Implementamos la función old() en el atributo value para mantener la persistencia de datos ante fallas de validación [00:16]. Adaptamos campos específicos según la migración: species (texto), breed (opcional sin required) [01:21, 01:57], e age usando un input de tipo number restringido con un mínimo de cero [02:43].
- 🎛️ Selectores Enum e Input de Archivos: Diseñamos menús desplegables (<select>) para los campos de opciones cerradas como género (gender con macho/hembra) y tamaño (size con tres alternativas) [03:46, 04:18]. Para la fotografía del animal (image), definimos un input de tipo file acompañado de un script interactivo en JavaScript para lograr la previsualización inmediata del archivo seleccionado [04:49, 07:51].
- 🌎 Habilitación de Múltiples Idiomas (Localización): Accedimos al archivo de configuración de localización del framework para descomentar y activar un tercer idioma global: el portugués de Brasil (pt_BR) [05:44, 07:20]. Diseñamos una estructura de pestañas (Tabs) en la interfaz que divide dinámicamente los campos JSON traducibles (historia, temperamento y estado de salud) en bloques separados para español, inglés y portugués [05:06, 08:41].
- 🛡️ Seguridad del Formulario (Ruta POST y Directiva @csrf): Creamos en routes/web.php una ruta homónima de tipo POST apuntando al método store del controlador [09:19]. En la vista, vinculamos el atributo action hacia dicha ruta e inyectamos la directiva obligatoria @csrf, encargada de generar un token de seguridad oculto (hidden input) que blinda al framework contra inyecciones y ataques externos de tipo CSRF [10:02, 11:17].
- ⚙️ Captura e Inspección del Objeto Request: Desarrollamos la lógica inicial en el método store de PetController utilizando return response()->json($request->all()) [11:54]. Tras realizar un llenado completo de prueba (datos de la mascota "Toby"), disparamos el envío y verificamos en pantalla la recepción estructurada de los datos tradicionales junto con los inputs dinámicos de idiomas correspondientes (story_es, story_en, story_pt) [12:42, 15:01].
🗄️ Próximo paso
Con la captura exitosa del objeto Request en formato JSON y los campos multi-idioma viajando de manera ordenada al backend, el flujo de envío está completado. En la próxima lección añadiremos las reglas estrictas de validación para proteger el servidor y aprenderemos a interceptar y procesar la imagen física para guardarla en el storage del servidor web antes de registrar la mascota en la base de datos MySQL. ¡Nos vemos en el próximo video! 🐾