Node.js Can';t获取要填充的Mongoose.js 3级子文档数组

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:

我在连接到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: '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跟踪