Мне было интересно, в чем разница между использованием populate и использованием методов поиска в mon goose ORM.
Допустим, у меня есть две модели. 1. Пользователь и 2.Post
mongoose.model('User', mongoose.Schema({
user : {type: String},
posts : [type: mongoose.SchemaTypes.ObjectId, ref: 'Post'}]
}))
и модель сообщения
mongoose.model('Post', mongoose.Schema({
user : {type: mongoose.SchemaTypes.ObjectId, ref: 'User'},
title : {type: String},
body : {type:String}
}))
Я хочу создать все сообщения Пользователь . Я могу сделать либо:
User.findById({_id:req._id}).then(currentUser => Post.find({user._id: currentUser}) ........
Или:
User.findById({_id:req._id}).populate('posts')
Какой из способов правильный? Какая разница между двумя?