Classe: Mongoid::Association::Embedded::EmbedsMany
- Herda:
-
Objeto
- Objeto
- Mongoid::Association::Embedded::EmbedsMany
- Inclui:
- Construível, Relatável
- Definido em:
- lib/mongoid/association/embedded/embeds_many.rb,
lib/mongoid/association/embedded/embeds_many/proxy.rb,
lib/mongoid/association/embedded/embeds_many/binding.rb,
lib/mongoid/association/embedded/embeds_many/buildable.rb
Visão geral
A associação de tipo EmbedsMany.
Definido sob namespace
Módulos: Construível Classes: Vinculação, Proxy
Colapsode resumo constante
- ASSOCIATION_OPTIONS =
As opções disponíveis para este tipo de associação, além das comuns.
[ :as, :cascade_callbacks, : cíclica, :order, :store_as, :before_add, :after_add, :before_remove, :after_remove ]
- VALID_OPTIONS =
A lista completa de opções válidas para esta associação, incluindo as compartilhadas.
(ASSOCIATION_OPTIONS + SHARED_OPTIONS).congelar
Constantes incluídas do Relatable
Relatável::PRIMARY_KEY_DEFAULT, Relatável::SHARED_OPTIONS
Resumo do atributo de instância
Atributos incluídos do Relatable
#name, #options, #parent_inclusions
Recolhimento do Resumo do método de instância
-
#critério(base, alvo) ➤ Objeto
Obtenha um objeto de critérios para pesquisar dados de documentos pai e filho.
-
#incorporado? ➤ verdadeiro
Este tipo de associação está incorporado?
-
#chave ➤ string
A chave usada para obter os atributos do objeto associado.
-
#nested_builder(attributes, opções) ➤Association::Nested::Many
O objeto de construtor aninhado.
-
#caminho(documento) ➤ Mongoid::Atomic::Paths::Embedded::Many
Obtenha a calcula de caminho para o documento fornecido .
-
#polimórfico? ➤ verdadeiro | false
Esta associação é polimórfica?
-
#primary_key ➤ nil
A chave primária.
-
#relação ➤Association::Embedded::EmbedsMany::Proxy
Obtenha a classe de proxy de associação para este tipo de associação.
-
#configuração! ➤ auto
Configure os métodos de instância, campos, etc.
-
#store_as ⇒ String
A chave de campo utilizada para armazenar a lista de objetos de associação.
-
#stores_foreign_key? ➤ false
Esse tipo de associação armazena a chave estrangeira?
-
#tipo ➤ string | nada
O campo utilizado para armazenar o tipo do objeto relacionado.
-
#validation_default ➤ verdadeiro
Obtenha a configuração de validação padrão para a associação.
Métodos incluídos do Buildable
Métodos incluídos do Relatable
#==, #bindable?, #counter_cache_column_name, #create_relation, #destructive?, #extension, #foreign_key_check, #foreign_key_setter, #get_callbacks, #in_to?, #initialize, #inverse, #inverse_association, #inverse_class, #inverse_class_name, #inverse_setter, #inverse_type, #inverse_type_setter, #inverses, #many?, #one?, #relation_class, #relation_class_name, #setter, #type_setter, #validate?
Métodos incluídos em Opções
#as, #autoconstrução?, #autosave, #cascadeing_callbacks?, #counter_cached?, #cíclica?, #depende, #forced_nil_inverse?, #indexado?.
Métodos incluídos no Constrainable
Detalhes do método de instância
#critério(base, alvo) ➤ Objeto
Obtenha um objeto de critérios para pesquisar dados de documentos pai e filho.
137 138 139 140 141 142 143 144 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 137 def critério(base, Alvo) criterion = classe.com escopo criterion. = true criterion.documentos = Alvo criterion.parent_document = base criterion.associação = auto apply_ordering(criterion) end |
#incorporado? ➤ verdadeiro
Esse tipo de associação está incorporado?
66 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 66 def ; true; end |
#chave ➤ string
A chave usada para obter os atributos do objeto associado.
59 60 61 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 59 def chave store_as.to_s end |
#nested_builder(attributes, opções) ➤Association ::Nested::Many
O objeto de construtor aninhado.
116 117 118 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 116 def nested_builder(attributes, ) Aninhado::Muitos.Novo(auto, attributes, ) end |
#caminho(documento) ➤ Mongoid::Atomic::Paths::Embedded::Many
Obtenha a calcula de caminho para o documento fornecido .
129 130 131 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 129 def caminho(documento) Mongoid::Atômico::Caminhos::Embedded::Muitos.Novo(documento) end |
#polimórfico? ➤ verdadeiro | false
Essa associação é polimórfica?
97 98 99 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 97 def polimórfico? @polymorphic ||= !!@opções[:as] end |
#primary_key ➤ nil
A chave primária
85 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 85 def primary_key; end |
#relação ➤Association::Embedded::EmbedsMany::Proxy
Obtenha a classe de proxy de associação para este tipo de associação.
90 91 92 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 90 def relação Proxy end |
#configuração! ➤ auto
Configure os métodos de instância, campos, etc. na classe possuidora da associação.
42 43 44 45 46 47 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 42 def configuração! setup_instance_methods! @ Owner_class. = @ Owner_class..mesclar(name => auto) @ Owner_class.aliased_fields[name.to_s] = store_as se store_as auto end |
#store_as ⇒ String
A chave de campo utilizada para armazenar a lista de objetos de associação.
52 53 54 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 52 def store_as @store_as ||= (@opções[:store_as].tentar(:to_s) || name.to_s) end |
#stores_foreign_key? ➤ false
Esse tipo de associação armazena a chave estrangeira?
80 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 80 def stores_foreign_key?; false; end |
#tipo ➤ string | nada
Só é relevante se a associação for polimórfica.
O campo utilizado para armazenar o tipo do objeto relacionado.
106 107 108 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 106 def type @type ||= "#{as}_type" se polimórfico? end |
#validation_default ⇒ true
Obtenha a configuração de validação padrão para a associação. Determina se, por padrão, ocorrerá uma validação associada.
75 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 75 def validation_default; true; end |