mongo 聚合添加删除字段查询

mongo aggregation to add deleted at field to query

我想使用 mongo 聚合向文档添加一个字段,让我知道何时“应该”删除文档。具体来说,我希望在 30 天后删除文档,这并不难,处理删除的函数非常简单,但是我希望能够告诉客户,当这个对象 是删除。就像我第一次创建文档一样,它的预定删除日期将是 30 日。我想锁定 createdAt 字段,然后简单地向其添加 30d。挂断正在发生这种情况,id 喜欢它在拉出文档时执行此操作(因为它们是在数组中拉出的)而不是遍历数组并修改每个字段。

这是聚合的当前代码

{
  $addFields: {
     deletedAt: "$createdAt" + Date("$createdAt" + 30),
  },
},

您可以使用 $dateAdd 运算符

{
    $addFields: {
      deletedAt: {
        $dateAdd: {
          startDate: '$createdAt',
          unit: 'day', // this also can be years, days, minutes and so on
          amount: 30 // the amount to add based on the unit
        }
      }
    }
}