使用Rails将嵌入式文档嵌入到MongoDB rake db:seed
问题描述:
db.seeds应该如何构造以便为MongoDB提供数据,特别是在包含嵌入式文档时?使用Rails将嵌入式文档嵌入到MongoDB rake db:seed
无法序列className类对象为BSON:
我试图播种所谓结构性错误文件db.seeds时遇到了以下错误。
答
Parent.create(title: 'foo', children: [
Child.create(title: 'bar', date: Time.utc(2011,10,13)),
Child.create(...),
Child.create(...)
])
答
开始通过创建一个“新”嵌套的对象,如地址,具有属性街道和城市,并设置它等于一个变量。然后创建父对象,在这种情况下,用户使用属性地址,并将上面创建的变量分配给它。由于它是嵌套对象,因此需要将变量包装在数组[]中。这样做会使读起来更容易,特别是如果你有很多嵌套对象。当引用嵌套对象时,确保排除冒号后面的任何空格,否则将会出现错误。
a = Address.new(street: 'Any_Street', city: 'Any_City')
User.create(address:[a])
这将种植mongoDB与嵌套在用户对象中的地址对象。