Usando la funcion prepareForValidation del FormRequest de laravel 8 para cambiar el la redirección de la validación
Saludos.
Para ponerlos en contexto, estoy creando un pequeño formulario para la creación de usuarios, nada del otro mundo.
Una vez realiza la validación esta redireccionara al mismo formulario, para lo cual necesitaba que se cargara automáticamente los datos de la persona seleccionada.
Hice una modificación en la ruta para que carga el formulario de creación de usuario.
Antes
Despues
Le agregue un parámetro opcional, que vendrá a ser el id de la persona, y en el controlador cargar y enviar la vista los datos de la persona.
Hasta todo bien , pero falta que después de validar la url tenga el id persona como parametro.
Aquí es donde interviene la función prepareForValidation.
Antes de configurar la función, vamos a sobre escribir el parámetro $redirect de la clase extendida formrequest, que es el parámetro que permite configurar la URI al que se redireccionara si falla la validación. Y creamos una variable $person_id
En la función prepareForValidation hacemos la validación, si existe un campo people_entities_id y contiene un valor diferente de null, entonces le asignara ese valor a la variable person_id y modificara la variable redirect. Caso contrario dejara la variable tal como esta.
Y este el resultado
Espero les sirva, les comente que pase horas buscando una posible solución en internet, al final revise la documentación y encontré lo que buscaba. Una buena documentación ayuda muchísimo. Si tienen alguna consulta, comentario o surgencia con gusto responderé, hasta la próxima.
Comentarios
Publicar un comentario