Módulo: Mongoid::Atributos::Anidados::Métodos de clase
- Definido en:
- lib/mongoid/atributos/nested.rb
Colapso delresumen constante
- RECHAZAR_TODOS_LOS_PROCESO_EN_BLANCO =
->(atributos){ atributos.¿todo? { |clave, valor| clave == '_destruir ' || valor.blank? } }
Colapso del resumen del método de instancia
-
#acepta_atributos_anidados_para(*args) ⇒ Objeto
Se utiliza cuando es necesario actualizar modelos relacionados desde una asociación principal.
Detalles del método de instancia
#acepta_atributos_anidados_para(*args) ⇒ Objeto
Se utiliza cuando se necesitan actualizar modelos relacionados desde una asociación madre. Se puede usar en asociaciones embebidas o referenciadas.
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
# Archivo 'lib/mongoid/attributes/nested.rb', línea 48 def acepta atributos anidados para(*args) = args..dup [:autosave] = true Si [:autosave].nil? [:rechazar_si] = RECHAZAR_TODOS_LOS_PROCEDIMIENTOS_EN_BLANCO Si [:rechazar_si] == :all_blank args.cada hacer |Nombre| met = "#{nombre}_atributos=" yo.atributos anidados["#{nombre}_atributos"] = met asociación = relaciones[Nombre.a_s] propagar Errors::Metadatos de atributos anidados no encontrados.Nuevo(yo, Nombre) a no ser que asociación atributos anidados de guardado automático(asociación) Si [:autosave] re_definir_método(met) hacer |attrs| _asignación hacer Si asociación.polimórfico? y asociación.inverse_type klass = asociación.resolver.modelo_para(Enviar(asociación.inverse_type)) = .¡unir!(:nombre_de_clase => klass) end asociación.constructor anidado(attrs, ).construir(yo) end end end end |