@nestjs/mongoose serializeInto 不是一个函数

问题描述 投票:0回答:1

我正在尝试使用 @nestjs/mongoose 执行 mongodb 聚合,并且我传递以下查询:

$match: {
  organizationId: new ObjectId(organizationId),
}

当我将organizationId作为纯字符串传递时,我没有得到任何结果,当我传递ObjectId的实例(从bson / mongodb / mongoose包导入)时,我收到以下错误:

{
  "type": "TypeError",
  "message": "value.serializeInto is not a function",
  "stack":
  TypeError: value.serializeInto is not a function
  at serializeObjectId (/packages/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:240:18)
  at serializeInto (/packages/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:892:17)
  at serializeObject (/packages/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:295:20)
  at serializeInto (/packages/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:875:17)
  at serializeObject (/packages/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:295:20)
  at serializeInto (/packages/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:655:17)
  at serializeObject (/packages/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:295:20)
  at serializeInto (/database/node_modules/mongodb/node_modules/bson/src/parser/serializer.ts:875:17)
  at Object.serialize (/packages/database/node_modules/mongodb/node_modules/bson/src/bson.ts:108:30)
  at OpMsgRequest.serializeBson (/packages/database/node_modules/mongodb/src/cmap/commands.ts:572:17)
}

使用

find
方法时也会发生这种情况。 有人遇到过这个问题吗?有没有一种方法可以简单地查询数据库来查找与 ObjectId(而不是 _id)匹配的文档

我尝试用断点调试,似乎

serializeInto
不是ObjectId方法,那么为什么bson和mongoose使用这个呢?

mongodb mongoose nestjs
1个回答
0
投票

将 mongoose 和 mongodb 更新到最新版本对我有用。

© www.soinside.com 2019 - 2024. All rights reserved.