insertMany方法在对象中返回insertIds,而不是在Mongoose 5中返回数组

时间:2019-04-10 03:01:49

标签: mongodb mongoose

最近我将Mongoose从4.x更新到5.x,代码在insertMany返回值处被破坏了。

在更新之前,insertIds是返回对象中的键,而值是一个Array,其中包含所有插入的ObjectId,如

[ObjectId1, ObjectId2].

更新后,insertIds的值是一个像这样的对象:

{ 
  1: ObjectId1, 
  2: ObjectId2 
}

我必须使用Object.values将其转换为Array。 我在Mongo Shell中尝试了insertMany方法,insertIds是Array。

升级期间我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

mongoose 5.x支持node-mongodb-native 3.x驱动程序,该驱动程序在insertedIds键中具有您现在看到的格式的结果。您需要进行一些代码更改,因为node-mongodb 2.x驱动程序在list中返回结果,但在3.x中返回map时返回结果。