Módulo: Mongoid::Attributes::Nested::ClassMethods
- Definido em:
- lib/mongoid/attributes/nested.rb
Colapsode resumo constante
- REJECT_ALL_BLANK_PROC =
->(attributes){ attributes.todos? { |chave, valor| chave == '_destroy' || valor.em branco? } }
Recolhimento do Resumo do método de instância
-
#accepts_nested_attributes_for(*args) ⇒ Object
Usado quando é necessário atualizar modelos relacionados a partir de uma associação principal.
Detalhes do método de instância
#accepts_nested_attributes_for(*args) ⇒ Object
Usado quando é necessário atualizar modelos relacionados a partir de uma associação principal. Pode ser usado em associações incorporadas ou referenciadas.
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# Arquivo 'lib/mongoid/attributes/nested.rb', linha 48 def accepts_nested_attributes_for(*Args) = Args..dup [:autosave] = true se [:autosave].nada? [:reject_if] = REJECT_ALL_BLANK_PROC se [:reject_if] == :all_white Args.cada fazer |name| meth = "#{name}_attributes=" auto.nested_attributes["#{name}_attributes"] = meth associação = relações[name.to_s] aumentar Errors::NestedAttributesMetadataNotFound.Novo(auto, name) a menos que associação autosave_nested_attributes(associação) se [:autosave] re_define_method(meth) fazer |attrs| _assigning fazer se associação.polimórfico? e a associação.inverse_type = .mesclar!(:class_name => auto.enviar(associação.inverse_type)) end associação.nested_builder(attrs, ).COMPILAR(auto) end end end end |