Ruby on Rails - Validaciones de entrada del usuario

Aquí está la lista de validaciones que puede realizar en la entrada del usuario:

valida_presencia_de

Lo siguiente comprueba que last_name y first_name deben completarse y no deben ser NULL.

validates_presence_of :firstname, :lastname

valida_length_of

El siguiente ejemplo muestra varias validaciones en un solo campo. Estas validaciones se pueden realizar por separado.

validates_length_of :password,
   :minimum => 8           # more than 8 characters
   :maximum => 16          # shorter than 16 characters
   :in => 8..16            # between 8 and 16 characters
   :too_short => 'way too short'    
   :too_long => 'way to long'

valida_acceptance_of

Lo siguiente aceptará solo el valor 'Y' para el campo de opción.

validates_acceptance_of :option            
                        :accept => 'Y'

valida_confirmation_of

Los campos contraseña y contraseña_confirmación deben coincidir y se utilizarán de la siguiente manera:

validates_confirmation_of :password

valida_uniqueness_of

Lo siguiente establece una condición para que nombre_usuario sea único.

validates_uniqueness_of :user_name

valida_format_of

Lo siguiente valida que un ID de correo electrónico determinado tiene un formato válido. Esto muestra cómo puede usar expresiones regulares para validar un campo.

validates_format_of :email
   :with => /^(+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i

valida_numericality_of

Esto valida que el campo dado sea numérico.

validates_numericality_of   :value                 
                            :only_integer => true   
                            :allow_nil => true

valida_inclusion_of

Lo siguiente comprueba que el valor pasado es una enumeración y cae en el rango dado.

validates_inclusion_of  :gender,   
                        :in => %w( m, f )

valida_exclusion_of

Lo siguiente comprueba que los valores dados no caen dentro del rango dado.

validates_exclusion_of  :age        
                        :in => 13..19

valida_inclusion_of

Lo siguiente comprueba que los valores dados deben caer en el rango indicado. Esto es lo opuesto a validates_exclusion_of.

validates_inclusion_of  :age
                        :in => 13..19

validates_associated

Esto valida que el objeto asociado sea válido.

Opciones para todas las validaciones

Puede utilizar las siguientes opciones junto con todas las validaciones.

  • :message => 'my own errormessage' Use esto para imprimir un mensaje de error personalizado en caso de que falle la validación.

  • :on => :create or :updateEsto se utilizará en los casos en los que desee realizar la validación solo cuando se esté creando o actualizando el registro. Entonces, si usa:create entonces esta validación funciona solo cuando hay una operación de creación en la base de datos.

Consulte el enlace Validaciones para obtener más detalles sobre las validaciones.

rieles-referencias-guía.htm