繁体   English   中英

如何在 mongoose 中使用 $lookup 来获取数组 object

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM