MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment renommer le chemin en réponse pour peupler

Vous pouvez le faire par peuplement virtuel, introduit dans la version 4.5 de mongoose . Pour cela, vous devez définir un champ virtuel dans le schéma de la mangouste.

var GallerySchema = new mongoose.Schema({
    name: String,
    objectId: {
        type: mongoose.Schema.Types.ObjectId
    },
});

GallerySchema.virtual('user', {
    ref: 'User',
    localField: 'objectId', 
    foreignField: '_id' 
});

Lorsque vous exécutez la requête de recherche, remplissez-la simplement avec l'utilisateur.

Gallry.find({_id: galleryId}).populate('user','firstName lastName').exec(function(error, gallery) {
    console.log(error);
    console.log(gallery);;
});

Le code ci-dessus n'est pas testé dans le programme, il peut y avoir des fautes de frappe, vous pouvez obtenir plus de détails sur la population virtuelle de la mangouste sur le lien ci-dessous

http://mongoosejs.com/docs/populate.html