Módulo: Mongoid::Validatable::Macros

Ampliado por:
ActiveSupport::Concern
Definido en:
lib/mongoid/validatable/macros.rb

Overview

Se incluye el módulo mixin en Mongoid::Document, que agrega varios métodos macro de validación, como validates_presence_of y validates_uniqueness_of.

Resumen del método de instancia colapsar

Detalles del método de instancia

#validates_associated(*args) ⇒ Objeto

Valida si una asociación es válida o no. Gestionará correctamente las asociaciones de uno a uno y de uno a muchos.

Ejemplos:


class Person
  include Mongoid::Document
  embeds_one :name
  embeds_many :addresses

  validates_associated :name, :addresses
end

Parámetros:

  • *args (objeto...)

    Los argumentos que se pasan al validador.



25
26
27
# Archivo 'lib/mongoid/validatable/macros.rb', línea 25

def valida_asociado(*args)
  validates_with(AssociatedValidator, _merge_attributes(args))
end

#validates_format_of(*args) ⇒ Object

Valida el formato de un campo.

Ejemplos:

class Person
  include Mongoid::Document
  field :title

  validates_format_of :title, with: /\A[a-z0-9 \-_]*\z/i
end

Parámetros:

  • *args (objeto...)

    Los nombres de los campos que se deben validar.



57
58
59
# Archivo 'lib/mongoid/validatable/macros.rb', línea 57

def valida_formato_de(*args)
  validates_with(FormatValidator, _merge_attributes(args))
end

#validates_length_of(*args) ⇒ Objeto

Valida la longitud de un campo.

Ejemplos:

class Person
  include Mongoid::Document
  field :title

  validates_length_of :title, minimum: 100
end

Parámetros:

  • *args (objeto...)

    Los nombres de los campos que se deben validar.



72
73
74
# Archivo 'lib/mongoid/validatable/macros.rb', línea 72

def valida_longitud_de(*args)
  validates_with(LengthValidator, _merge_attributes(args))
end

#validates_numericality_of(*args) ⇒ objeto

Valida si un campo contiene o no un valor numérico.

Ejemplos:

class Person
  include Mongoid::Document
  field :cost

  validates_numericality_of :cost
end

Parámetros:

  • *args (objeto...)

    Los nombres de los campos que se deben validar.



102
103
104
# Archivo 'lib/mongoid/validatable/macros.rb', línea 102

def valida la numeración de(*args)
  validates_with(Validador de Numericidad, _merge_attributes(args))
end

#validates_presence_of(*args) ⇒ Object

Valida si un campo está presente o no; es decir, si es nulo o está vacío.

Ejemplos:

class Person
  include Mongoid::Document
  field :title

  validates_presence_of :title
end

Parámetros:

  • *args (objeto...)

    Los nombres de los campos que se deben validar.



87
88
89
# Archivo 'lib/mongoid/validatable/macros.rb', línea 87

def valida_la_presencia_de(*args)
  validates_with(PresenceValidator, _merge_attributes(args))
end

#validates_uniqueness_of(*args) ⇒ Object

Valida si un campo es único con respecto a los documentos en la base de datos o no.

Ejemplos:


class Person
  include Mongoid::Document
  field :title

  validates_uniqueness_of :title
end

Parámetros:

  • *args (objeto...)

    Los argumentos que se pasan al validador.



42
43
44
# Archivo 'lib/mongoid/validatable/macros.rb', línea 42

def valida_uniqeness_of(*args)
  validates_with(UniquenessValidator, _merge_attributes(args))
end