将猫鼬列从对象更改为 ObjectId

Posted

技术标签:

【中文标题】将猫鼬列从对象更改为 ObjectId【英文标题】:Change mongoose column from object to ObjectId 【发布时间】:2019-11-06 00:36:36 【问题描述】:

我遇到了一个奇怪的问题,我的数据库中的一些记录已保存为经典对象,而不是 ObjectId。

这是一个错误条目的例子:

应该如何:

即使我的 userId 架构类型是mongoose.Schema.Types.ObjectId,有人可以解释为什么以这种方式保存这些记录吗?我怎样才能让它们成为 ObjectId?

【问题讨论】:

请将您的架构和代码添加到 save 到 mongo。 【参考方案1】:

让它工作,基于这个答案:Mongoose Saved _id'ss as a string instead of ObjectId

var mongoose = require('mongoose');
user._id = mongoose.Types.ObjectId(users[i]._id);

【讨论】:

以上是关于将猫鼬列从对象更改为 ObjectId的主要内容,如果未能解决你的问题,请参考以下文章

将猫鼬查询结果存储在另一个猫鼬查询中

将猫鼬模型引导到 BackboneJS

无法将猫鼬虚拟与打字稿一起使用

无法将猫鼬虚拟与打字稿一起使用

将猫鼬数据传递到 Angular 4 组件“详细信息”页面?

如何将日期格式从对象的猫鼬数组更改为 ejs 视图上的字符串?