Módulo: Mongoide::Persistente::Minable

Ampliado por:
ActiveSupport::Preocupación
Incluido en:
Mongoid::Persistable
Definido en:
lib/mongoid/persistable/minable.rb

Overview

Define el comportamiento para asignar un campo (o campos) al valor más pequeño entre su valor actual o un valor dado.

Colapso del resumen del método de instancia

Detalles del método de instancia

#set_min(fields) ⇒ Documento También conocido como: clamp_upper_bound

Establezca el campo o los campos dados en el menor de su valor actual o un valor dado.

Ejemplos:

Establezca un campo para que no sea mayor que 100.

document.min(field: 100)

Parámetros:

  • campos (Hash<Símbolo | Cadena, Comparable>)

    Los campos a configurar, con sus valores máximos correspondientes.

Devuelve:



22
23
24
25
26
27
28
29
30
31
32
33
# Archivo 'lib/mongoid/persistable/minable.rb', línea 22

def set_min(campos)
  preparar_operación_atómica hacer |ops|
    operaciones atómicas del proceso(campos) hacer |Campo, valor|
      current_value = atributos[Campo]
      Si valor < current_value
        atributo_de_proceso Campo, valor
        ops[nombre_del_atributo_atómico(Campo)] = valor
      end
    end
    { "$min" => ops } a no ser que ops.¿vacío?
  end
end