猫鼬聚合排序无法正常工作

时间:2021-05-16 22:14:57

标签: node.js mongodb mongoose

此查询中的 $sort 方法无法正常工作,我想列出聚合,它们应该根据我定义的 $sort 查询列出

const newConverSation = await Messenger.Messenger.aggregate([
    { 
        $sort: { 'createdAt': -1 } 
    },
    { $match: {
        users: mongoose.Types.ObjectId(req.body.userid)}},
        {
      $group: {
        _id: { $setUnion: "$users" },
        message: { $first: "$$ROOT" },
      },
    },
  ])

有时排序正确,有时不排序,随机...

--------------------------------为另一个问题编辑

这是我的 toJSON 方法,它通常可以正常工作

messengerScheme.methods.toJSON = function(){
const messenger = this
const messengerObject = messenger.toObject()
messengerObject.createdAt = moment(messengerObject.createdAt).fromNow()
return messengerObject

}

当我直接查询我的模型时,我得到 createdAt : "7 hours",但是当我用这样的聚合查询它时,我得到了 createdAt:“2021-05-17T11:34:47.475Z”,所以 toJSON 方法在我的聚合

0 个答案:

没有答案