Post Top Ad

Your Ad Spot

domingo, 19 de abril de 2020

Validación Laravel

La validación es el proceso de verificar los datos entrantes. De forma predeterminada, laravel proporciona la clase de controlador base que utiliza el rasgo ValidatesRequests para validar todas las solicitudes Http entrantes.
Comprendamos la validación a través de un ejemplo.
Crearemos una aplicación en la que agreguemos el nombre del alumno.
  • Primero, creamos el nuevo proyecto laravel en el que realizamos la validación. Ingrese el comando que se proporciona a continuación en una herramienta de línea de comandos
compositor create-project laravel / laravel = 5.8 student_app -prefer-dist;
Validación Laravel
El resultado anterior muestra que el proyecto student_app se ha creado correctamente en el directorio xampp / htdocs .
  • Después de la creación de un proyecto, primero crearemos un modelo con la migración de la base de datos.
Validación Laravel 1
  • La declaración anterior crea un modelo 'Estudiante' en la carpeta de la aplicación y 'create_students_table' en la carpeta Migraciones. La estructura del archivo 'create_students_table.php' se da a continuación:
  1. <? php  
  2. use Illuminate \ Support \ Facades \ Schema;  
  3. use Illuminate \ Database \ Schema \ Blueprint;  
  4. use Illuminate \ Database \ Migrations \ Migration;  
  5. clase  CreateStudentsTable  extiende la  migración  
  6. {  
  7.     / ** 
  8.      * Ejecuta las migraciones. 
  9.      * * 
  10.      * @return void 
  11.      * /  
  12.      función pública up ()  
  13.     {  
  14.         Schema :: create ( 'students' , function (Blueprint $ table) {  
  15.             $ tabla-> bigIncrements ( 'id' );  
  16.             $ tabla-> cadena ( 'nombre' );  
  17.             $ tabla-> marcas de tiempo ();  
  18.         });  
  19.     }  
  20.   
  21.     / ** 
  22.      * Revertir las migraciones. 
  23.      * * 
  24.      * @return void 
  25.      * /  
  26.      función pública abajo ()  
  27.     {  
  28.         Esquema :: dropIfExists ( 'estudiantes' );  
  29.     }  
  30. }  
El código anterior crea una tabla 'estudiantes' que tiene cuatro columnas (id, nombre, created_at, updated_at).
Datos disponibles en la tabla de usuario:
tabla de usuario
Validación Laravel 2
  • Migre los cambios anteriores en una base de datos utilizando el comando que se proporciona a continuación:
php artesanal migrar;
Validación Laravel 3
  • Ahora, creamos un controlador que maneja todas las operaciones de la base de datos.
Validación Laravel 4
  • Después de crear un controlador, crearemos la ruta de todos los métodos de un controlador. Para crear una ruta, necesitamos escribir el siguiente código en el archivo web.php :
Ruta :: recurso ('estudiante', 'EstudianteController');
Validación Laravel 5
  • En este paso, definiremos el método index () de la clase StudentController , y el código del método index () se proporciona a continuación:
  1.  índice de función pública ()  
  2. {  
  3. $ estudiante = Estudiante :: todos ();  
  4.  vista de retorno 'índice' , compacto ( 'estudiante' ));  
  5. }  
  • Ahora, creamos una página de vista ( index.blade.php ) de nuestra aplicación.
index.blade.php
  1. @extends 'layout.master' )  
  2. @section 'contenido' )  
  3. <h1> Estudiante </h1>  
  4. <form action == "{{route ('student.store')}}"   method = "Post" >  
  5. @csrf  
  6. <div> <input type = "text"  name = "name" > </div>  
  7. <br/>  
  8. <div> <input type = "button"  value = "Agregar Estudiantes" > </div>  
  9. </form>  
  10. <ul>  
  11. @foreach ($ estudiante como $ estudiantes)  
  12. <li> {{$ estudiantes-> nombre}} </li>  
  13.  @endforeach  
  14. <ul>  
  15. @endsection  
La salida del código anterior se muestra a continuación:
Validación Laravel 6
Como sabemos que el URI del método index () de un StudentController es '/ student', entonces cuando presionamos la url ' localhost / student_app / public / student ', llama al método index () . El método index () devuelve la vista del archivo index.blade.php , que se muestra en la captura de pantalla anterior.
  • Cuando ingresamos los datos en el cuadro de texto que se muestra en la captura de pantalla anterior, se debe guardar en una base de datos. Para lograr esto, el código de la función store () se da a continuación:
  1.  tienda de funciones públicas (Solicitud $ solicitud)  
  2.     {  
  3.         $ data = $ request-> validate ([    // validando el campo de nombre.  
  4.         'name' => 'obligatorio' ]);  
  5.         $ estudiante = nuevo  estudiante;  
  6.         $ estudiante-> nombre = $ solicitud-> obtener ( 'nombre' );  
  7.         $ estudiante-> guardar ();  
  8.     }  
Salida
Validación Laravel 7
Cuando hacemos clic en el botón ' Agregar Estudiantes ', y luego actualizamos la página, el resultado sería:
Validación Laravel 8
Como podemos ver en la captura de pantalla anterior , se agrega Himanshu ' en la lista de estudiantes, lo que significa que el botón Agregar estudiantes ' funciona correctamente.
A veces, la situación surge cuando no ingresamos ningún dato y presionamos el botón Agregar estudiante '; Esto requiere validación. Agregamos el código de validación en el método store () que valida el campo nombre ', pero no hemos mostrado ningún mensaje de error. Para mostrar el mensaje de error, laravel ha proporcionado la variable de error que muestra el mensaje de error. Se puede usar como:
  1. {{$ errors-> first ( 'nombre' )}}  
Después de agregar la línea anterior en index.blade.php , el código del archivo index.blade.php se ve así:
index.blade.php
  1. @extends 'layout.master' )  
  2. @section 'contenido' )  
  3. <h1> Estudiante </h1>  
  4. <form action = "{{route ('student.store')}}"  method = "Post" >  
  5. @csrf  
  6. <div> <input type = "text"  name = "name" > </div>  
  7. <br/>  
  8. <div> {{$ errors-> first ( 'nombre' )}} </div>  
  9. <br/>  
  10. <div> <button type = "submit" > Agregar estudiantes </div>  
  11. </form>  
  12. <ul>  
  13. @foreach ($ estudiante como $ estudiantes)  
  14. <li> {{$ estudiantes-> nombre}} </li>  
  15.  @endforeach  
  16. <ul>  
  17. @endsection  
Salida
Validación Laravel 9
También podemos restringir los caracteres en el campo del cuadro de texto. Si queremos ingresar al menos 5 caracteres en el campo de nombre, entonces podemos usar el campo min en una función de validación.
  1.  tienda de funciones públicas (Solicitud $ solicitud)  
  2.     {  
  3.         $ datos = $ solicitud-> validar ([  
  4.         'name' => 'requerido | min: 5' ]);  
  5.         $ estudiante = nuevo  estudiante;  
  6.         $ estudiante-> nombre = $ solicitud-> obtener ( 'nombre' );  
  7.         $ estudiante-> guardar ();  
  8.     }  
Salida
Validación Laravel 10
Validación Laravel 11

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

outbrain

Páginas