【发布时间】:2014-05-13 09:50:41
【问题描述】:
在猫鼬中,您可以按照以下方式声明子文档的架构:
var childSchema = new mongoose.Schema({ name: String, age: String });
var parentSchema = new mongoose.Schema({
children: [childSchema]
});
var Parent = mongoose.model('Parent', parentSchema);
var Child = mongoose.model('Child', childSchema);
var child = new Child({name:'Joe', age: '21'});
var parent = new Parent();
parent.children = [child];
parent.save(function(err, saved) {
if(err) console.error(err);
});
似乎子文档类型需要是一个数组。我需要能够将子文档保存为单个实例,而不是数组,即:
var childSchema = new mongoose.Schema({ name: String, age: String });
var parentSchema = new mongoose.Schema({
children: childSchema // not an array
});
var Parent = mongoose.model('Parent', parentSchema);
var Child = mongoose.model('Child', childSchema);
var child = new Child({name:'Joe', age: '21'});
var parent = new Parent();
parent.children = child; // not an array
parent.save(function(err, saved) {
if(err) console.error(err);
});
所以不是数组或引用,只是一个实例子文档。这可能吗?如果不应该使用:
var childInstance = child.toObject();
【问题讨论】: