【发布时间】:2011-05-25 20:23:57
【问题描述】:
我使用 mongoid 作为我的数据库。
而我的模型是这样的
class Address
include Mongoid::Document
embedded_in :person, :inverse_of => :addresses
end
class Person
include Mongoid::Document
embeds_many :addresses
end
我在设置动态嵌套人员表单时遇到问题,用户可以在表单中添加许多地址并一次保存所有地址。 我在更新人员嵌套表单时的哈希是这样的
"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"=>""}
但地址不会根据收到的哈希值更新。
知道为什么会这样吗?
谢谢
【问题讨论】:
-
如果你用 ruby 和 mongo 重新标记它,你可能会得到更好的答案。另外,你应该去掉嵌入标签,因为它不适合这个问题。