Laravel 5 IDE Helper
Laravel 5 IDE Helper
¡INSCRÍBETE A CUALQUIER CURSO CON UN 50% DE DESCUENTO PARA NUEVOS CLIENTES!


Las Reglas de validación en Laravel 5.5 añaden una nueva forma de extender el sistema de validaciones haciendo uso de objetos.

Si has trabajado con versiones anteriores a Laravel 5.5 y has tenido que crear sistemas de validación adaptados a tus necesidades estoy seguro que conocerás Validator::extend, gracias al método extend es cómo hasta ahora podíamos realizar este tipo de tareas.

El nuevo comando make:rule en Laravel 5.5

Eso ha terminado, desde Laravel 5.5 tenemos a nuestra disposición el nuevo comando make:rule, el cuál nos creará un nuevo archivo dentro del directorio app, desde aquí podremos aplicar reglas tan complejas como necesitemos.

Reglas con Validator::extend()

Vamos a generar una sencilla regla para comprobar que el valor pasado tenga una longitud mayor de 6 caracteres, pero antes de ver el nuevo sistema de validación Laravel 5.5, veamos el mismo ejemplo pero con Validator::extend().

Reglas de validación en Laravel 5.5

Ahora vamos a ver la nueva forma que nos ofrece Laravel 5.5, para ello vamos a ejecutar primero el siguiente comando.

Ahora simplemente vamos a abrir el nuevo archivo generado app/Rules/ValidName.php y vamos a reemplazar el código por el siguiente.

Es tan sencillo como que el método passes devuelve un booleano, true si pasa la validación y false si no la pasa, y el método message simplemente devolverá el mensaje de error, en nuestro caso utilizamos el nuevosistema de traducción de Laravel 5.4 con JSON.

Finalmente sólo nos queda aplicar esta regla contra alguna validación, eso podemos hacerlo de la siguiente forma desde cualquier controlador.




De aquí en adelante simplemente es añadir tanta dificultad como sea necesaria a cada regla de validación, está claro que tenemos una gran herramienta a nuestra disposición para generar potentes Reglas de validación en Laravel 5.5.