当前位置: 首页 > 知识库问答 >
问题:

Mongoose拒绝将有效字符串转换为ObjectId

伍耀
2023-03-14

我返回文档\u id,并将其用作请求。params。id以在稍后阶段获取文档。

ObjectId。isValid()返回true,然后在ObjectId()FindFindOne中使用它将导致强制转换错误或

hex不是一个函数。

基本上也是直接从数据库复制粘贴\u id以进行测试

我用的是猫鼬^4.7。6; <代码>\u id看起来像:586e30a597f85b69891df304

[堆栈痕迹]

[CastError:CasterToObjectId在路径“586e30a597f85b69891df304”处对模型“模块”的值“586e30a597f85b69891df304”转换为ObjectId失败]消息:“CastError”,stringValue:“586E30A597F85B691DF304”,种类:“ObjectId”,值:“586E30A597F85B691DF304”,路径:“U id”,原因:未定义,

共有2个答案

唐星晖
2023-03-14

原来这是猫鼬版本中的一个bug。卸下我的node_模块并在mongoose设置为4.3的情况下重新安装。3修复了这个问题。

窦夜洛
2023-03-14

这是猫鼬中的一只虫子

bson包真的有缺陷

 类似资料:
  • 问题内容: 如何将经典字符串转换为f字符串? 输出: 所需的输出: 问题答案: f字符串是 语法 ,而不是对象类型。您不能将任意字符串转换为该语法,该语法会创建一个字符串对象,而不是相反。 我假设您想用作模板,因此只需在对象上使用方法: 如果要提供可配置的模板服务,请创建一个包含所有可以插值的字段的名称空间字典,并与调用语法一起使用以应用名称空间: 然后,用户可以在字段中的名称空间中使用任何键(或

  • 问题内容: 我有一个字符串,该字符串基本上包含一堆JSON格式的文本,最终我希望将其以“漂亮打印”格式导出到Excel,并带有适当的缩进嵌套等。 出于可读性考虑,必须保留键/值的原始顺序。我想实现自己想要的目标的过程是 a)使用类似eval的方法将字符串转换为字典,b)使用collections库中的OrderedDict保持顺序完整。 但是我没有得到预期的结果: 我也还没有弄清楚如何将输出以漂亮

  • 问题内容: 我试图从一个对象。该字符串包含一些字符,需要用其百分比转义序列替换。但是,当我使用URLEncoder以UTF-8编码对String进行编码时,即使将/替换为其转义序列。 如何从String对象获取有效的编码URL? http://www.google.com?q=a b给出 **http%3A%2F%2www.google.com …, 而我希望输出为 http://www.goog

  • 问题内容: Oracle Java Community网站上的一篇文章提供了以下方法作为示例(对于JPA Converter,但这并不相关): 将String y强制转换为String val有什么用?有正当的理由吗? 原始文章:JPA的新增功能 问题答案: 这样的转换是完全没有必要的。我可以想象那是以前 但是后来参数类型更改为,而作者只是忘了删除强制类型转换。

  • 问题内容: 我想使用JSON发送大字节数组启发了我,为了减少开销,我想使用base128编码(实际上可以产生有效的json字符串)。但不幸的是,我无法找到一些在JS中进行转换的过程。我将发布过程作为对此问题的答案,但是可能是某人的过程更短,或者可能是在JSON中有效发送二进制数据的更好的主意。 问题答案: ES6: 编码 解码 我在这里嵌入功能-这里。这里的掩盖思想是将字节数组转换为位数组,然后将

  • 问题内容: 我有一个无效的json字符串,如下所示, 我尝试使用JSON.parse将其转换为对象。但是,这不是有效的json字符串。是否有任何函数可以将这种无效格式转换为有效的json字符串或直接转换为对象? 问题答案: 如果您的示例语法与真实JSON相同,则JSONLint表示您需要对名称和值使用双引号。 仅在这种情况下,请使用以下替换调用: 但是,您首先应该尝试使用有效的Json。