我在使用update_attributes
参考文档时遇到问题。我已将我的问题简化为 AFAICT 应该可以工作的简单示例,但不能:
class Account
include Mongoid::Document
has_many :submissions, :autosave => true
end
class Submission
include Mongoid::Document
belongs_to :account
end
a = Account.new
a.save!
s = Submission.new
s.update_attributes({"account" => {"id" => a.id}})
s.save!
a.id == s.account.id # false
调用update_attributes
是创建一个新的空白Account
对象,而不是引用我告诉它使用的现有对象。这是怎么回事?
更新
需要明确的是,我正在尝试在update
将一个添加Account
到Submission
. 我知道还有其他方法可以通过编写特定代码来链接这些文档。但是正常的 rails 方式应该允许我使用 HTML 表单以这种方式更新文档,对吧?