20. Qué son los Form Request
Los Form Request son clases en Laravel que permiten centralizar la validación de los datos de los formularios en una sola ubicación y mejorar la reutilización del código. En lugar de validar los datos del formulario directamente en el controlador, puedes crear una clase Form Request que encapsule las reglas de validación y la lógica de validación. Los Form Request en Laravel son una forma conveniente de validar los datos del formulario antes de que lleguen al controlador, lo que ayuda a mantener el código organizado y limpio. En el decimoséptimo capítulo del curso "Laravel desde cero", aprenderás a utilizar los Form Request en Laravel para validar los datos del formulario y cómo personalizar los mensajes de error y las reglas de validación en función de las necesidades de tu aplicación. Con estos conocimientos, podrás mejorar la calidad del código de tus aplicaciones Laravel y mantener la validación de los datos del formulario de manera centralizada.
2 comentarios
Inicia sesión para comentar
Comentarios:
-
Elis Morán hace 9 meses
Y podria utilizar el mismo request tanto para el metodo Store como para el metodo Update?
-
Victor Arana Flores hace 9 meses
Hola Elis. Si quieres que ambos metodos tenga la mismas validaciones, lo puedes usar.
-
-
Walter hace 2 años
? Form Request
Lo creamos con
php artisan make:request StoreCurso
Se guarda en la carpeta App\Http\Requests
La clase StoreCurso tiene dos métodos: authorize() y rules().
En authorize debe contener la lógica necesaria para verificar si el usuario que esta intentando ingresar datos a nuestra BD tiene los permisos necesarios para hacerlo.
En rules movemos las reglas de validaciones que colocamos en el método store del controlador CursoController.
Agregamos en el controlador:
use App\Http\Request\StoreCurso;
Y en su método store cambiamos el tipo Request por StoreCurso:
public function store(StoreCurso $request) { …
De esta forma $request recibe todos los datos del formulario y también hace las validaciones.
Para traducir/cambiar los mensajes de validación, creamos el método attributes() en el form request:
public function attributes() { return [ 'name' => 'nombre del curso', ]; }
Para generar un mensaje más personalizado agregamos también el método messages() indicando el elemento y la validación:
public function attributes() { return [ 'description.require' => 'Debe ingresar una descripción del curso', ]; }