Node.js Can';t获取要填充的Mongoose.js 3级子文档数组
我在连接到mongodb的node.js服务器上使用mongoose.js,我有一个mongoose模型,如下所示:Node.js Can';t获取要填充的Mongoose.js 3级子文档数组,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我在连接到mongodb的node.js服务器上使用mongoose.js,我有一个mongoose模型,如下所示: var ItemSchema = new Schema({ qtde: { type: Number, default: 0.0, required: 'Digite a quantidade' }, detalhe: { type: Schema.ObjectId, ref:
var ItemSchema = new Schema({
qtde: {
type: Number,
default: 0.0,
required: 'Digite a quantidade'
},
detalhe: {
type: Schema.ObjectId,
ref: 'Detalhe'
},
produto: {
type: Schema.ObjectId,
ref: 'Produto'
}
});
var DetalheSchema = new Schema({
dia: {
type: String,
default: '',
required: 'Digite o Dia do coffee'
},
orcamento: {
type: Schema.ObjectId,
ref: 'Orcamento'
},
itens: [{type: Schema.ObjectId, ref: 'Item' }]
});
var OrcamentoSchema = new Schema({
contato: {
type: String,
default: '',
required: 'Digite o nome do Contato',
trim: true
},
curso: {
type: String,
default: '',
required: 'Digite o Curso',
trim: true
},
dias: {
type: String,
default: '',
required: 'Digite os dias do curso',
trim: true
},
inicio: {
type: String,
required: 'Digite a Data de Início'
},
detalhes: [{type: Schema.ObjectId, ref: 'Detalhe'}]
});
mongoose.model('Item', ItemSchema);
mongoose.model('Detalhe', DetalheSchema);
mongoose.model('Orcamento', OrcamentoSchema);
我的问题是,我无法获取orcamento.detalhes[n]。要填充甚至加载的itens数组,它只是一直显示为空数组。不支持嵌套子文档填充 唯一的方法是填充第一级子文档,然后循环所有检索到的子文档并在其中填充。这里需要注意的是,在猫鼬内部,这正是填充工作的方式 或者你可以用这个
谢谢。我将测试mongoose-deep-populate。完成测试后,您能接受答案吗?测试实现mongoose-deep-populate时,出现以下错误:警告:检测到可能的EventEmitter内存泄漏。添加了11个侦听器。使用emitter.setMaxListeners()增加限制。(节点)警告:检测到可能的EventEmitter内存泄漏。添加了11个重新连接侦听器。在Db.open(F:\desenv\mean\joaomaria\node\u modules\mongoose\node\u modules\mongodb\lib\Server.js:291:17)的Server.connect(F:\desenv\mean\joaomaria\node\u modules\mongoose\node\u modules\mongodb\lib\Db.js:196:19)的addListener(events.js.js:179:179:15)中使用emitter.setMaxMaxListen跟踪