Clase: Mongoid::Validatable::UniquenessValidator

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

Overview

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

También es posible limitar la restricción de unicidad a un conjunto de documentos que cumplan ciertas condiciones:

class Person
  include Mongoid::Document
  field :title
  field :active, type: Boolean

  validates_uniqueness_of :title, conditions: -> {where(active: true)}
end

Ejemplos:

Define el validador de unicidad.


class Person
  include Mongoid::Document
  field :title

  validates_uniqueness_of :title
end

Resumen del método de instancia colapsar

Métodos incluidos de Queryable

#con_consulta

Detalles del método de instancia

#validate_each(document, attribute, value) ⇒ Errors

Valide el documento para detectar violaciones de unicidad.

Ejemplos:

Validar el documento.

validate_each(person, :title, "Sir")

Parámetros:

  • Documento (documento)

    El documento a validar.

  • atributo (Símbolo)

    El campo a validar.

  • Valor (objeto)

    El valor del campo.

Devuelve:



41
42
43
44
45
46
47
48
49
50
51
# Archivo 'lib/mongoid/validatable/uniqueness.rb', línea 41

def validar_cada(Documento, atributo, Valor)
  with_query(Documento) hacer
    attrib, val = to_validate(Documento, atributo, Valor)
    return a menos que validación_requerida?(Documento, attrib)
    si Documento.¿Incorporado?
      validar_incrustado(Documento, attrib, val)
    else
      validate_root(Documento, attrib, val)
    end
  end
end