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

Definido em:
lib/mongoid/association/embedded/cycle.rb

Recolhimento do Resumo do método de instância

Detalhes do método de instância

#recursivamente_embeds_many(opções = {}) ➤ Objeto

Crie uma associação incorporada cíclica que crie uma hierarquia de árvore para o documento e muitos documentos filhos incorporados.

Isso fornece a nomenclatura padrão para acessar um documento pai ou seus filhos.

Exemplos:

Configure um recursivo incorpora muitos.


class Role
  include Mongoid::Document
  recursively_embeds_many
end

O exemplo anterior é um atalho para isso.


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
# Arquivo 'lib/mongoid/association/embedded/cycle.rb', linha 39

def recursivamente_embeds_many(opções = {})
  incorpora_many(
      cycle_child_name,
      opções.mesclar(class_name: auto.name, cíclica: true)
  )
  embedded_in cycle_parent_name, class_name: auto.name, cíclica: true
end

#recursivamente_embeds_one(opções = {}) ➤ Objeto

Crie uma associação cíclica incorporada que crie um único relacionamento autorreferencial para um pai e um único filho.

Isso fornece a nomenclatura padrão para acessar um documento pai ou seus filhos.

Exemplos:

Configure uma incorporação recursiva.


class Role
  include Mongoid::Document
  recursively_embeds_one
end

O exemplo anterior é um atalho para isso.


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
# Arquivo 'lib/mongoid/association/embedded/cycle.rb', linha 67

def recursivamente_embeds_one(opções = {})
  incorpora_one(
      cycle_child_name(false),
      opções.mesclar(class_name: auto.name, cíclica: true)
  )
  embedded_in cycle_parent_name, class_name: auto.name, cíclica: true
end