Clase: Mongoid::Validatable::PresenceValidator

Hereda:
ActiveModel::EachValidator
  • Objeto
Mostrar todo
Definido en:
lib/mongoid/validatable/presence.rb

Overview

Valida que los atributos especificados no estén en blanco (según la definición de Object#blank?).

Ejemplos:

Define el validador de presencia.


class Person
  include Mongoid::Document
  field :title

  validates_presence_of :title
end

Resumen del método de instancia colapsar

Detalles del método de instancia

#validate_each(documento, atributo, valor) ⇒ Objeto

Validar el documento para el atributo y el valor.

Ejemplos:

Validar el documento.

validator.validate_each(doc, :title, "")

Parámetros:

  • Documento (documento)

    El documento a validar.

  • Atributo (Símbolo)

    El nombre del atributo.

  • Valor (objeto)

    El valor actual del campo.



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# Archivo 'lib/mongoid/validatable/presence.rb', línea 25

def validate_each(Documento, Atributo, Valor)
  Campo = Documento.Campos[Documento.database_field_name(Atributo)]
  si Campo.intentar(:localized?) && !Valor.blank?
    Valor.each_pair hacer |_locale, _valor|
      Next a menos que ¿ausente?(_valor)

      Documento.errors.add(
        Atributo,
        :blank_in_locale,
        **opciones, location: _locale
      )
    end
  elsif Documento.relaciones.has_key?(Atributo.to_s)
    Documento.errors.add(Atributo, :blank, **opciones) si relacion_o_fk_faltante?(Documento, Atributo, Valor)
  elsif ¿ausente?(Valor)
    Documento.errors.add(Atributo, :blank, **opciones)
  end
end