2010-12-15 7 views
5

Używam mongoid jako mojej bazy danych.osadza wiele postaci zagnieżdżonych, mongoid

A mój model jest jak ten

class Address 
    include Mongoid::Document 
    embedded_in :person, :inverse_of => :addresses 
end 

class Person 
    include Mongoid::Document 
    embeds_many :addresses 
end 

Mam problem w tworzeniu dynamicznych zagnieżdżonych formularza osoba, gdzie użytkownik może dodać wiele adresów wewnątrz formularza i zapisać je wszystkie na raz. Moja hash podczas aktualizowania osoba zagnieżdżone formularza jest jak ten

"person"=>{"name"=>"John", 
"addresses_attributes"=>{"0"=>{"address1"=>"calgary","address2"=>"New York", "id"=>"4cef79f67adf3509280001be"}, 
         "1"=>{"address1"=>"bhah", "address2"=>"blah", "id"=>"4cef74rdeadf3509280001bf"}}, 
"policy_id"=>"4cef5feb7adf35092800013a", 
"start_date"=>"2010-11-10", "end_date"=>""} 

ale adres nie zostanie zaktualizowane zgodnie hash otrzymałem.

Każdy pomysł, dlaczego tak się dzieje?

Dzięki

+0

Możecie dostać lepsze odpowiedzi, jeśli zmieniać tagów ten z rubinem i Mongo. Powinieneś także pozbyć się osadzonego znacznika, ponieważ nie jest odpowiedni dla tego pytania. –

Odpowiedz

0

spróbuj dodać accepted_nested_attributes_for do modelu Person

+0

ya dodałem go. ale nie wspomniałem w pytaniu. Przepraszam. – Gagan

+0

Powinieneś zaakceptować_nested_attributes_do - masz literówkę – ADAM