这个问题也与dynamic references有关,但与我上一个问题没什么不同。
我想将数组项模式与此模式分开:
var userSchema = new Schema({
name: String,
connections: [{
kind: String,
item: { type: ObjectId, refPath: 'connections.kind' }
}]
});
对此:
var itemSchema = new Schema({
kind: String,
item: { type: ObjectId, refPath: 'kind' } // <-- (1)
})
var userSchema = new Schema({
name: String,
connections: [itemSchema]
});
我应该在(1)
中放入什么内容才能使其正常工作,以及如何在此类文档中使用填充?
在第一种情况下,我可以使用.populate('connections.item')
,但不适用于单独的模型。
P.S。我真的需要这种模式,因为itemSchema中有其他验证。