Módulo: Mongoid::Association::Embedded::Cyclic::ClassMethods

Definido en:
lib/mongoid/association/embedded/cyclic.rb

Resumen del método de instancia colapsar

Detalles del método de instancia

#recursively_embeds_many(options = {}) ⇒ objeto

Crear una asociación incrustada cíclica que cree una jerarquía de árbol para el documento y muchos documentos subordinados incrustados.

Esto proporciona la nomenclatura por defecto para acceder a un documento principal o a sus hijos.

Ejemplos:

Configura un recursive embeds many.


class Role
  include Mongoid::Document
  recursively_embeds_many
end

El ejemplo anterior es un atajo para esto.


class Role
  include Mongoid::Document
  embeds_many :child_roles, :class_name => "Role", :cyclic => true
  embedded_in :parent_role, :class_name => "Role", :cyclic => true
end


39
40
41
42
43
44
45
# Archivo 'lib/mongoid/association/embedded/cyclic.rb', línea 39

def incrusta recursivamente muchos(opciones = {})
  insertar_varios(
      cyclic_child_name,
      opciones.fusionar(nombre_de_clase: sí mismo.Nombre, cíclico: true)
  )
  integrado_en cyclic_parent_name, nombre_de_clase: sí mismo.Nombre, cíclico: true
end

#recursivamente_incrusta_uno(opciones = {}) ⇒ Objeto

Crea una asociación cíclica embebida que genera una única relación de autorreferencia para un padre y un único hijo.

Esto proporciona la nomenclatura por defecto para acceder a un documento principal o a sus hijos.

Ejemplos:

Configura uno de incrustaciones recursivas.


class Role
  include Mongoid::Document
  recursively_embeds_one
end

El ejemplo anterior es un atajo para esto.


class Role
  include Mongoid::Document
  embeds_one :child_role, :class_name => "Role", :cyclic => true
  embedded_in :parent_role, :class_name => "Role", :cyclic => true
end


67
68
69
70
71
72
73
# Archivo 'lib/mongoid/association/embedded/cyclic.rb', línea 67

def one_recursivamente_embeds_one(opciones = {})
  embeds_one(
      cyclic_child_name(false),
      opciones.fusionar(nombre_de_clase: sí mismo.Nombre, cíclico: true)
  )
  integrado_en cyclic_parent_name, nombre_de_clase: sí mismo.Nombre, cíclico: true
end