![](/img/trans.png)
[英]Use Mongoose aggregate to fetch object inside of an array
[英]how too use $lookup in mongoose to fetch array object
我有以下聚合,它没有正确返回用户配置文件
const newConverSation = await Messenger.Messenger.aggregate([
{ $match: {
users: mongoose.Types.ObjectId("6084036ad4d4cd40a47afba4")}},
{ $sort: { updatedAt: -1 } },
{
$group: {
_id: { $setUnion: "$users" },
message: { $first: "$$ROOT" }
}
},
{
$lookup: {
from: 'users',
localField: 'users',
foreignField: '_id',
as: 'users'
}
}
])
结果,有一个像这样的用户数组
"users" : [
ObjectId("60841d03f6ccad2b0400f619"),
ObjectId("6084036ad4d4cd40a47afba4")
],
我只想根据这两个 ID 获取用户配置文件,但它不会以当前方式返回配置文件。
尝试在要显示此数据的.find
属性之后添加.populate
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.