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.
%i[ como 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, #wner_class, #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.
141 142 143 144 145 146 147 148 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 141 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?
64 65 66 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 64 def true end |
#chave ➤ string
A chave usada para obter os atributos do objeto associado.
57 58 59 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 57 def chave store_as.to_s end |
#nested_builder(attributes, opções) ➤Association ::Nested::Many
O objeto de construtor aninhado.
120 121 122 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 120 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 .
133 134 135 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 133 def caminho(documento) Mongoid::Atômico::Caminhos::Embedded::Muitos.Novo(documento) end |
#polimórfico? ➤ verdadeiro | false
Essa associação é polimórfica?
101 102 103 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 101 def polimórfico? @polymorphic ||= !!@opções[:as] end |
#primary_key ➤ nil
A chave primária
89 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 89 def primary_key; end |
#relação ➤Association::Embedded::EmbedsMany::Proxy
Obtenha a classe de proxy de associação para este tipo de associação.
94 95 96 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 94 def relação Proxy end |
#configuração! ➤ auto
Configure os métodos de instância, campos, etc. na classe possuidora da associação.
40 41 42 43 44 45 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 40 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.
50 51 52 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 50 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?
82 83 84 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 82 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.
110 111 112 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 110 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 76 77 |
# File 'lib/mongoid/association/embedded/embeds_many.rb', linha 75 def validation_default true end |