【问题标题】:Confused about Types.ObjectId and Schema.Types.ObjectId from Mongoose对 Mongoose 的 Types.ObjectId 和 Schema.Types.ObjectId 感到困惑
【发布时间】:2022-02-21 20:47:42
【问题描述】:

我正在尝试使用 mongoose 创建嵌套模式,并为子文档附加一个 user_id 字段。我发现了这种方法

const {Schema} = require("mongoose");
var user_id = {
    type:Schema.Types.ObjectId,
    ref:"User",
  },

后来我发现Types可以从顶层的mongoose导入,但是ObjectId的定义和Schema.Types有很大的不同,所以

const {Types} = require("mongoose");
var user_id = {
    type:new Types.ObjectId(),
    ref:"User",
  },

我找不到有关此细微差别的文档....我想我应该在整个应用程序中使用一致的方法,所以有人可以帮忙解释一下吗?

*编辑:我认为我应该使用的应该与为User 表定义_id 的方式一致,但它使用的是哪一个?

【问题讨论】:

    标签: mongodb mongoose objectid


    【解决方案1】:

    哦,我明白了。

    newUser._id instanceof Types.ObjectId == true
    

    所以 Types.ObjectId 是正确的使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-28
      • 1970-01-01
      • 2013-03-29
      • 2014-11-02
      • 1970-01-01
      • 2014-03-18
      • 2012-10-08
      • 1970-01-01
      相关资源
      最近更新 更多