mongodb 如何使用Mongoose控制更改流输出

2uluyalo  于 2023-10-16  发布在  Go
关注(0)|答案(1)|浏览(143)

我正在使用Mongoose尝试Mongodb change streams

Person.watch().on('change', data => console.log(data));

它跟踪了数据库的所有更改,是否可以应用条件并跟踪某些文档,例如如何仅检查id ==1和id ==2文档?

js81xvg6

js81xvg61#

我不确定你能不能在模型上做这个。但是假设你可以,你可能可以传递一个管道来过滤输入文档。我个人在DB上使用手表,它工作得很好。
在这里,我使用{fullDocument:"updateLookup"}选项将整个对象添加到结果中。然后,我可以将id与简单的$in查询操作符相匹配。

Person.watch( [
      {
        $match: {
          "fullDocument.id": {"$in" : [1,2]},       
        },
      },
    ],
    {
      fullDocument: "updateLookup",
    }).on('change', data => console.log(data));

相关问题