Módulo: Mongoid::Persistable::Maxable

Ampliado por:
ActiveSupport::Concern
Incluido en:
Mongoid::Persistable
Definido en:
lib/mongoid/persistable/maxable.rb

Overview

Define un comportamiento para establecer un campo (o campos) al valor mayor entre su valor actual y un valor dado.

Resumen del método de instancia colapsar

Detalles del método de instancia

#set_max(campos) ⇒ Documento También conocido como: clamp_lower_bound

Establece el campo o los campos dados al mayor de sus valores actuales o a un valor dado.

Ejemplos:

Establezca que un campo no sea inferior a 100.

document.set_max(field: 100)

Parámetros:

  • Campos (Hash<Symbol | String, Comparable>)

    Los campos para establecer, con los valores mínimos correspondientes.

Devuelve:



20
21
22
23
24
25
26
27
28
29
30
31
# Archivo 'lib/mongoid/persistable/maxable.rb', línea 20

def set_max(Campos)
  preparar_operación_atómica hacer |ops|
    proceso_operaciones_atómicas(Campos) hacer |Campo, Valor|
      current_value = atributos[Campo]
      si Valor > current_value
        process_attribute Campo, Valor
        ops[atomic_attribute_name(Campo)] = Valor
      end
    end
    { '$max' => ops } a menos que ops.¿vacío?
  end
end