'How to populate different models on the basis of conditions in mongoose?
A comment can have 2 types of author, first one is user and second is listing.
comment.js
commentSchema={ _author: {
type: mongoose.Schema.Types.ObjectId,
refPath: 'author'
},
author: {
type: String,
required: true,
enum: ['User', 'Listing']
},text: {
type: String,
required: true,
trim: true
}}
now users have their profile details inside general profile model and listings have their profile details inside listing information model
userModel.js {_generalProfile:ObjectId}
listingModel.js {_listingInformation:ObjectId}
generalProfile.js {name:String}
listingInformation.js {title:String}
now when fetching a comment then how to populate user and listing data, means if author is user then populate generalProfile and if author is listing then populate listingInformation
how to do this ?
Thanks
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
