提问者:小点点

mongo Deletemany; 如何调试结果?


我在用猫鼬的Node。

下面是我试图调试的deleteMany():

代码:

  const result = await Follow.deleteMany({
    $or: [
      { userFollowingAnother: req.user.id },
      { userThatIsFollowed: req.user.id },
    ],
  });

  console.log("result: " + result.acknowledged);

详细信息:

不幸的是,结果没有返回任何值。 (返回未定义)此外,deleteMany也不起作用,因为文档之后仍然存在于“Follow”集合中。

官方文档通常表示提供了响应,甚至提供了示例,但我似乎无法访问结果对象的数据或消息。

目标:一个工作查询,但更重要的是,一个调试结果的方法,或者至少访问某种结果。

更新-修复:在猫鼬调用之前,我丢失了一个简单的await语句。 我已经更新了代码以反映固定版本,因为我的问题与调试有关。


共1个答案

匿名用户

来自https://mongoosejs.com/docs/api/mongoose.html#mongoose_mongoose-set

用这样的方法,

对控制台启用日志收集方法+参数

mongoose.set('debug', true)

使用自定义函数记录集合方法+参数

mongoose.set('debug', function(collectionName, methodName, ...methodArgs) {});