你能在猫鼬中执行多个嵌套填充吗?
Can you perform multiple nested populates in mongoose?
所以,我正在构建一个应用程序,它有一个餐厅模型,餐厅有评论。评论有一个我正在填充的用户(coffeescript):
exports.listOne = (req, res) ->
Restuarant.findOne
_id: req.params.id
.populate({ path: 'reviews' })
.exec (err, docs) ->
options =
path: 'reviews.userId'
model: 'User'
if err
return res.json(500)
Venue.populate docs, options, (err, venues) ->
res.json venues
return
return
问题是用户引用了我也想填充的酒店模型,我可以在此查询中填充酒店吗?
Mongoose 现在支持深度填充,这应该可以解决您的问题。你应该能够将这样的东西传递给你的填充(很难在没有看到模型的情况下准确地说):
.populate({
path: 'reviews',
model: 'Review',
populate: {
path: 'user',
model: 'User',
populate: {
path: 'hotel',
model: 'Hotel'
}
}
})...
这是一篇关于人口的好文章,可能会有帮助:http://frontendcollisionblog.com/mongodb/2016/01/24/mongoose-populate.html
所以,我正在构建一个应用程序,它有一个餐厅模型,餐厅有评论。评论有一个我正在填充的用户(coffeescript):
exports.listOne = (req, res) ->
Restuarant.findOne
_id: req.params.id
.populate({ path: 'reviews' })
.exec (err, docs) ->
options =
path: 'reviews.userId'
model: 'User'
if err
return res.json(500)
Venue.populate docs, options, (err, venues) ->
res.json venues
return
return
问题是用户引用了我也想填充的酒店模型,我可以在此查询中填充酒店吗?
Mongoose 现在支持深度填充,这应该可以解决您的问题。你应该能够将这样的东西传递给你的填充(很难在没有看到模型的情况下准确地说):
.populate({
path: 'reviews',
model: 'Review',
populate: {
path: 'user',
model: 'User',
populate: {
path: 'hotel',
model: 'Hotel'
}
}
})...
这是一篇关于人口的好文章,可能会有帮助:http://frontendcollisionblog.com/mongodb/2016/01/24/mongoose-populate.html