我有一个猫鼬对象如下:
var BoxSchema = new Schema({
name: String,
OwnerId: String,
items: [{type: Schema.Types.ObjectId, ref: 'Item'}],
created: {type: Date, default: Date.now},
updated: {type: Date, default: Date.now}
});
mongoose.model('Box', BoxSchema);
var ItemSchema = new Schema({
name: String,
OwnerId: String,
settings: {
tools: [{type: Schema.Types.ObjectId, ref: 'Tool'}]
},
created: {type: Date, default: Date.now},
updated: {type: Date, default: Date.now}
});
mongoose.model('Item', ItemSchema);
var ToolSchema = new Schema({
name: String,
type: {type: String},
uses: [{type: String}]
created: {type: Date, default: Date.now},
updated: {type: Date, default: Date.now}
});
mongoose.model('Tool', ToolSchema);
现在我做类似的事情:
Box.find().populate('items settings.tools').exec(function(err, boxes){
console.log(boxes);
});
我发现 Items 填充得很好,但每个项目中的 settings.tools 不是。我怎样才能让它填充?