Tout d'abord, je vous suggère d'utiliser une requête de remplissage, si vous pensez que ce remplissage ne vous donnera pas les données dont vous avez besoin, vous pouvez exécuter deux requêtes et fusionner ces résultats.
pour peupler, j'ai trouvé la solution dans la doc officielle de mangouste. tu peux faire comme ça.
var mongoose = require('mongoose')
, Schema = mongoose.Schema
var personSchema = Schema({
_id : Number,
name : String,
age : Number,
stories : [{ type: Schema.Types.ObjectId, ref: 'Story' }]
});
var storySchema = Schema({
_creator : { type: Number, ref: 'Person' },
title : String,
fans : [{ type: Number, ref: 'Person' }]
});
var Story = mongoose.model('Story', storySchema);
var Person = mongoose.model('Person', personSchema);
Story
.findOne({ title: 'Once upon a timex.' })
.populate('_creator')
.exec(function (err, story) {
if (err) return handleError(err);
console.log('The creator is %s', story._creator.name);
// prints "The creator is Aaron"
});
voici le lien doc :http://mongoosejs.com/docs/populate.html