comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Validaciones en Ruby on rails

  • 1 Respuestas
  • 1973 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Alejandro9999

  • *
  • Underc0der
  • Mensajes: 452
  • Actividad:
    0%
  • Reputación 1
  • Humildad y sencillez ante todo.
    • Ver Perfil
« en: Diciembre 01, 2013, 12:51:32 am »

¿Por qué utilizar validaciones?

Las validaciones se utilizan para garantizar que los datos que se están guardando en la base de datos sean los correctos con el formato que nosotros establezcamos desde un principio. Por ejemplo, puede ser importante para una aplicación guardar el correo electrónico de forma correcta, aunque con estos métodos no validamos que el correo le pertenezca a nuestro usuario, podemos por medio de un formulario exigir el campo obligatoriamente y que además éste cumpla con el formato de un correo electrónico.

Como probablemente ya sepan hay otras maneras de validar la información de los objetos que se almacenan en la base de datos, como lo son las validaciones del lado del cliente (JavaScript: Útiles pero poco fiables), validaciones a nivel de controlador (por lo general se vuelven difíciles de manejar, probar y mantener) o las validaciones nativas en base de datos (Se establece una fuerte dependencia del manejador de base de datos, haciendo difícil el mantenimiento y la adaptabilidad de nuestras aplicaciones)

Validaciones

Entrando de una vez en materia para nuestro curso desarrollaremos todo el ejemplo para ver la magia de los validadores de ActiveRecord.
Preparación de nuestro modelo

Lo primero que debemos hacer para que Rails reconozca nuestras validaciones, es adaptar nuestros modelos indicándoles a cada uno de los atributos el tipo de validación que necesita. Algunos de los tipos de validadores que nos ofrece Rails son:
Confirmación confirmation

Validación que utilizamos cuando queremos que el usuario confirme la información que nos este suministrando.
Formato format

Este tipo de validación verifica que la información del usuario concuerde con una expresión regular que se especifica con la función :with
Tamaño o longitud length

Este tipo de asistente juega con la longitud de los datos suministrados por el usuario, para que se verifique según nuestras necesidades.
Valor nulo o vacío presence

Este asistente de validación nos verifica si el atributo del modelo puede ser nulo.

Numérico numericality

Este asistente verifica que el atributo sólo sea numérico
Único uniqueness

Este último asistente que estudiaremos, por el momento, nos verifica justo antes de guardar en la base de datos que nuestro objeto no este repetido, es decir, que sea único.

Ahora, luego de haber descrito muy brevemente algunos de los validadores que nos ofrece Rails veamos un ejemplo donde usaremos algunos de estos atributos.

You are not allowed to view links. Register or Login

Numérico numericality

Este asistente verifica que el atributo sólo sea numérico
Único uniqueness

Este último asistente que estudiaremos, por el momento, nos verifica justo antes de guardar en la base de datos que nuestro objeto no este repetido, es decir, que sea único.

Ahora, luego de haber descrito muy brevemente algunos de los validadores que nos ofrece Rails veamos un ejemplo donde usaremos algunos de estos atributos.

You are not allowed to view links. Register or Login

Como seguramente hemos visto en el ejemplo, una serie de opciones que le dan forma a las validaciones, como el mensaje: que nos da el error que queremos mostrar cuando no se cumpla la condición.

Preparación del controlador y vista

Una vez creado el modelo creamos nuestros controladores para generar, recibir y procesar la información ingresada por el usuario. El controlador que realizaremos para este ejemplo sólo consta de dos métodos: index que carga la lista de personas ya almacenadas y nos mostrará un formulario para cargar la información y create simplemente recibe la información del formulario y la procesa. Veamos esto en código.

You are not allowed to view links. Register or Login

Por último creamos nuestro formulario donde cargaremos la información.

You are not allowed to view links. Register or Login

Como ven en la imagen se puede dividir en dos partes: la parte superior consta del manejo de errores, es donde se obtiene el objeto, se verifica si contiene errores y los muestra en una lista; y por último la parte inferior es nuestro formulario.

Veamos cómo nos muestra Ruby on Rails los errores en el formulario que acabamos de crear (obviamente se pueden editar los estilos para mostrar una mejor presentación).

You are not allowed to view links. Register or Login

Conclusión

En esta lección aprendimos cómo crear un formulario y validarlo en el servidor antes de almacenarlo en nuestra base de datos. También vimos algunos de los tipos de validadores que ActiveRecord nos provee y estudiamos la importancia de este tema.

Una vez más te recomiendo echarle un vistazo a la serie completa de Ruby desde cero, así como a las otras series de CodeHero, agradeciendo de antemano todas sus dudas y comentarios en la sección de comentarios.

¡Hasta el próximo capítulo!
« Última modificación: Diciembre 01, 2013, 01:00:23 am por Alejandro9999 »

Desconectado alexander1712

  • *
  • Underc0der
  • Mensajes: 850
  • Actividad:
    0%
  • Reputación -2
    • Ver Perfil
    • El blog del programador
    • Email
« Respuesta #1 en: Diciembre 01, 2013, 04:22:39 am »
interesante, muy buen aporte :)

saludos!

 

¿Te gustó el post? COMPARTILO!



[Ruby] Traductor de Decimal a Ascii / Ascii a Decimal

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1400
Último mensaje Febrero 24, 2010, 04:16:38 pm
por ANTRAX
Lenguaje Ruby, aprendiendo poco a poco.

Iniciado por Alejandro9999

Respuestas: 2
Vistas: 1378
Último mensaje Agosto 15, 2013, 02:58:39 pm
por Alejandro9999
Shoesrb donde puedes hacerle una interfaz grafica a una aplicación hecha en Ruby

Iniciado por Alejandro9999

Respuestas: 3
Vistas: 1659
Último mensaje Mayo 21, 2013, 03:51:00 am
por D4rkC0d3r
[VIDEOTUTORIAL] Curso Online de Desarrollo API's en Ruby - 63 videos - 9 modulos

Iniciado por graphixx

Respuestas: 0
Vistas: 1475
Último mensaje Agosto 12, 2015, 06:10:59 pm
por graphixx
Soporte para Ruby 1.9.3 finaliza el 23 de febrero de 2015

Iniciado por Alejandro9999

Respuestas: 0
Vistas: 979
Último mensaje Febrero 25, 2014, 03:54:37 pm
por Alejandro9999