我不知道发生了什么,但我似乎无法找到一小段代码。我使用没有嵌入文档的mongomappper,一切都很顺利。使用嵌入式文档我碰到了砖墙。我正在按照mongomapper homepage上的说明使用Rails控制台:
以下是我的模特:
class Assessment
include Mongomapper::Document
many :sections
end
class Section
include MongoMapper::EmbeddedDocument
key :title, String
validates_presence_of :title
end
当我跑步时:
a = Assessment.create(:sections => [ Section.new(:title => 'test') ] )
我将得到以下输出:
=> #<Assessment _id: BSON::ObjectId('4e71efce69a74c0fb6000002'), sections: nil>
我还尝试了a = Assessment.new()
,a.sections << Section.new(:title => "test")
但结果相同。
为什么内部没有任何内容?
答案 0 :(得分:1)
,包括:
attr_accessible :sections
应该让创造工作(对我来说)。你可能想补充一下:
validates_associated :sections
让您的评估以您可能期望的方式验证嵌入式部分。
是的,迟了几年但是我不得不解决这个问题而谷歌把我带到了这里。