Bien, veamos cómo validad los campos.
Entonces bueno, tenemos que agregar variadores en cada uno.
En el Yussef Name, en el password.
Y así entonces vamos a partir primero en el Yussef, debajo Yussef de punto add validador perfecto y
acá agregamos uno new.
Vamos a a a a crear la instancia, por ejemplo, de requerido validador.
Listo.
Continuabas también con password.
Por acá ad validador new.
Lo mismo requirió aliaba.
Pero por ejemplo, también podríamos agregar otro más.
Punto add new largo perfecto largo va a leer.
Pero recuerden entre un mínimo y un máximo.
Por ejemplo, el mínimo va a tener 6 caracteres coma y el máximo 12.
El Limay.
Bueno, primero que sea requerido antes que validar el correo.
Y también recuerden que lo podemos invocar de forma encadenada, es decir, punto o bajamos.
Punto ad validador porque retorna a la misma instancia.
Entonces new email se fijan y acá también en password, incluso en password.
Quitamos el punto y coma.
Quitamos password.
Lo enfocamos de forma encadenada.
La edad?
Bueno, se puede leer como un nombre, un número.
Número, valor y experiencia.
Lo podría dejar opcional para el ejemplo, pero igual podemos validar como requerido no nul como lo
queremos manejar.
Lenguaje
punto ad validador no nulo.
Es decir, tenemos que seleccionar un elemento.
No puede ser nulo.
Perfecto.
Ahí tenemos y estemos listo.
Entonces ahora vamos a validar.
Con un Ford acá tenemos la lista de elementos.
Entonces, después de dibujar el HTML por acá, validamos elementos.
Punto.
Bueno, igual con un for icha for each, una expresión lanta e o elemento como le queramos llamar las
llaves y preguntamos con un if.
Entonces if por cada elemento validamos.
Entonces, si es distinto de válido e punto es válido, valíamos cada elemento.
Entonces si falla la validación porque estamos negando que sea válido?
Bueno, mostramos lo mensaje de error.
Recuerden que tenemos el método get errores del elemento e elemento punto get errores.
La ley de errores punto y tiramos porque es una lista.
Podríamos utilizar también frizz otro for each anidado acá.
Error de error.
Imprimimos las llaves.
Shout error.
Es esto un detalle importante en expresiones lanta, como en el foreach?
Aunque después lo vamos hacer más en detalle.
Pero cuando tenemos una línea de código, una sentencia se puede omitir acá las llaves y también el
punto y coma.
Entonces podemos quitar las llaves acá.
Acá quitamos el punto y coma.
Y esto lo dejamos acá.
Se fijen.
Queda más simple, que es mucho más simple sin las llaves.
Y funciona igual.
Incluso después vamos a ver otra forma que se puede optimizar un poco más.
Pero bien, vamos a probar.
De momento debería estar todo bien.
Veamos.
Levantamos.
Se fijan, no muestren ningún mensaje error, solamente muestro los campo, porque claro, las condiciones
también.
Acá tenemos el password.
Acá tenemos los valores.
El password tiene ese carácter, ese que está bien, pero por ejemplo, coloquemos o quitemos Johnno,
vamos a quitar, lo dejamos en blanco.
Bueno, y tiene requerido valor, por lo tanto debería dar algún mensaje error.
Entonces levantamos al menos uno en él yussef n el campo requerido se fijan.
Ahora, qué pasa si el password que entre 6 y 12 lo dejamos en 5 caracteres lo tenemos por acá?
Acá voy a quitarle el 3.
Vamos a levantar.
El campo de tener mínimos caracteres y un máximo de 2 secretos, entonces está valiendo bien.
El tema es que nos estamos tirando todavía el nombre campo.
Eso lo podemos agregar como para saber que campo está dando error.
Ya si se fija en el correo puede quitar el arroba.
Por ejemplo.
Y empieza a validar el formato el email es inválido, acaba de colocar 28 L no es dígito, no es un
número.
El campo de ser un número.
Voy a comentar acá.
Cuando seleccionamos un elemento acá selector, lo voy a quitar esto.
Se fijan?
El campo no puede ser nulo y así empezó a liar cada campo y sus valores.
Así que está funcionando perfecto.
Pero como decía, lo podemos mejorar.
Cómo?
Bueno, veamos, acá en el foreach hay una forma para optimizar un poco más.
Por ejemplo, en vez colocar sisten punto out, punto print LN Fíjate lo que debe ser, puede quitar
el punto, puede colocar dos puntos y voy a quitar esto de acá.
Y quitamos esto el parámetro, el argumento lo dejamos de esa forma.
Funciona.
Lo ejecutamos y funciona tal cual.
Por qué es un atajo?
Es un Halia?
Siempre cuando voy a volver atrás para poder explicar eso ahí y ahí.
Bueno, cuando tenemos un argumento, un parámetro que se emite en el foreach y pasamos por argumento
en algún método función, este mismo parámetro se puede asumir.
Si se fijan acá simplemente un parámetro y utilizamos este parámetro o argumento en un método para imprimir,
por ejemplo.
Entonces, bueno, lo quito acá, lo quitamos y quitamos acá también.
Por qué se asume de forma automática que ese argumento se pasa en el método de acá de forma automática?
Pero en vez de punto sería dos puntos para indicar que es un alias o atajo para pasar argumentos en
una prisión lanta.
Se le conoce como método de referencia o referenciado en una prisión lanta.
Entonces.
En el fondo lo que se emite se pasa por argumento acá.
Pero obviamente no lo escribimos.
No colocamos ni paréntesis ni el nombre de la variable argumento.
No se asume por defecto que se pasa.
Se fijan.
Es un atajo.
Bien, ahora, qué pasa si quiero colocar el nombre acá?
Por ejemplo, que me diga el campo, el campo y Yussef Naim requerido el campo password debe tener un
mínimo de caracteres y máximo 12 caracteres el correo o el email formato del email en valio.
El campo debe ser un número, pero el campo sería la edad.
Acá el campo no puede ser nulo, pero se refiere al lenguaje y así colocar el nombre.
Bueno, lo podemos hacer acá con Troceada para regresar.
El único inconveniente que tendríamos quien no podríamos implementar la forma de método referenciado
tiene que ser de forma explícita, porque no solamente se pasan a argumentos, sino también vamos a
embocar o vamos a concatenar con el nombre campo.
Entonces acá en el print line, por ejemplo, el nombre campo lo obtenemos con el elemento claro e.
Entonces e punto get.
Nombre.
Pero no tenemos el nombre Elgueta.
Entonces lo tenemos que crear, lo tenemos que implementar en quien nombre.
Para eso nos vamos al elemento form, a la clase abstracta acá.
Y acá vamos a implementar el método GET para nombre, se fijan?
Ahora necesitamos el método GET.
Entonces por acá.
Generated Kether nonbre Ok.
Listo.
Ahora lo podemos utilizar.
Nos vamos a la clase con el main ejemplo for.
Ahora nyet, un espacio.
Volvemos.
Nombre.
Ahí lo tenemos.
Concatenados, más un string.
Dos punto.
Un espacio y listo.
Ahí tenemos el nombre.
Va a ser mucho más explícito el mensaje.
Yussef.
2 punto el campo requerido clave 2 punto el campo de tener mínimo y así de esta forma sabemosque campo
da al error.
Incluso, por ejemplo, si nos vamos al password por acá.
Qué pasa si lo dejamos vacío?
Dejamos vacío el pascual?
Veamos dos messages de error.
El campo requerido, pero también el campo de tener mínimo 6 y 12.
Es decir, está variando en ambos variable.
Y lo mismo el correo también si lo dejamos vacío.
Va a valer dos veces, es requerido y también por el formato.
Ahora vamos a corregir.
Era un punto, creo, de lo mismo 28 en vez de l 28.
Creo que vamos a tener solamente lenguaje, nada más.
El lenguaje y la clave.
Claro, porque la clave la tenemos acá.
3 Y el lenguaje selected, por ejemplo, ya Yaba o Peyton.
Punto Set Selected.
Ahora no hay error.
Está todo bien.
Todo perfecto y está listo, pero lo podemos mejorar con detalles y es lo que íbamos a hacer.
La siguiente clase, por ejemplo, en la próxima clase, en vez de colocar esto acá.
Concatenar el nombre con el error.
Esto también lo podríamos hacer en la clase, en el validad braca elemento form.
Acá podemos concatenar.
Acá tenemos el nombre y el mensaje.
Incluso podríamos usar una plantilla y utilizar el string format con la porcentage y ya podemos agregar
el nombre campo de forma más personalizada.
Pero bien, lo dejamos para la próxima clase.
Nos vemos.