¡Hola! ¿Qué tal nuevamente? Continuando con el curso de Laravel 10, hoy llegamos a nuestra última clase, veremos la validación de datos de entrada en Laravel 10. Así contar con un sistema básico pero funcional utilizando los componentes más importantes de Laravel.
¡Empecemos!
¿Qué es la validación de datos?
La validación de datos es el proceso de verificar y asegurarse de que los datos ingresados por el usuario cumplan con ciertas condiciones o requisitos específicos antes de ser procesados.
¿Qué es la validación de datos Laravel?
La validación de datos de entrada en Laravel es una característica incorporada que proporciona una forma elegante y poderosa de validar los datos de entrada proporcionados por el usuario antes de procesarlos o almacenarlos en una base de datos.
Laravel realiza la validación de datos utilizando un conjunto de reglas de validación predefinidas y personalizadas que se aplican a cada campo de entrada. Las validaciones incluyen la verificación de que un campo sea requerido, que tenga un formato de dirección de correo electrónico válido, que sea numérico, que sea único en una tabla de base de datos, que tenga un longitudes de caracteres como máximo y mínimo, entre otros varios criterios y formatos.
Reglas de validación disponibles
Laravel te proporciona una lista de las validaciones que se pueden realizar a un dato de entrada en su página oficial Validaciones en Laravel. Aquí veremos las validaciones más utilizadas e importantes que se pueden realizar.
- Array
- Ascii
- Before (Date)
- Between
- Boolean
- Confirmed
- Current Password
- Date
- Date Equals
- Date Format
- Decimal
- Different
- Digits
- Enum
- File
- Image (File)
- In
- In Array
- Integer
- IP Address
- JSON
- MAC Address
- Max
- Min
- Not In
- Nullable
- Numeric
- Password
- Regular Expression
- Required
- Size
- String
- Uppercase
Mensaje de error de campos
Las validaciones se aplican para que nuestra aplicación pueda controlar los datos de entrada y no causen errores de ejecución o a nivel de base de datos. Si ejecutamos por ejemplo nuestro proyecto y enviamos datos desde el formulario de “Alumnos” Laravel nos arroja un error violación de restricción de integridad segun los campos en la base de datos.

Crear las validaciones (Validation)
Para prevenir los errores en tiempo de ejecución o base de datos. Aplicaremos algunas de las validaciones en nuestro sistema, en el Controlador “AlumnoController” utilizaremos la validación de datos. Utilizaremos la sentencia “$request->validate” para definir las reglas de validación para el formulario de alumnos en los campos “nombre”, “apellido”, “edad” y “dirección”. Si los datos proporcionados por el usuario no cumplen con estas reglas.
$validated = $request->validate([ 'nombre' => 'required|min:3|max:25', 'apellido' => 'required|min:3|max:25', 'edad' => 'required|integer', 'direccion' => 'required', ]);
Laravel generará automáticamente mensajes de error que se pueden mostrar al usuario para corregir los errores. En la vista del formulario alumnos “crear.blade.php” añadimos el siguiente código debajo de la etiqueta “form”.
@foreach ($errors->all() as $error) <p style="color:red">{{ $error }}</p> @endforeach
Actualizamos nuestro navegador, en el formulario “nuevo alumno” realizamos las pruebas enviando datos erróneos (por ejemplo, campos vacíos, en el campo edad caracteres alfanuméricos, en los campos nombre y apellidos con longitudes mínimas a 3 y máximas a 25 ) hacemos clic en el botón “Guardar”, y los errores se reflejarán en el formulario.

Si todo está correcto nos mostrará los mensajes de error en el formulario Alumno. Ahora, realizamos el mismo procedimiento esta vez para el formulario de editar alumno (en el controlador y la vista de alumnos).
Ejercicios de la clase
Crear las validaciones correspondientes para el formulario “Publicaciones” tanto para el método “store” y “update” (tener presente cada campo del formulario).
Para cualquier duda o consulta de validaciones en Laravel 10 puedes escribirnos a nuestro correo info@norvicsoftware.com para poder ayudarte, o puedes dejarnos un comentario.
En la siguiente oportunidad iremos aprendiendo y conociendo nuevas funcionalidades de este maravilloso Framework.
Saludos y éxitos nos vemos en la siguiente oportunidad.

Victor Peña
Desarrollador de software Backend Developer, experto en Laravel Framework, PHP, JavaScript y MySQL. Creador de contenidos de emprendimiento y desarrollo de software.