【问题标题】:Mongoose unique index for ObjectId fieldObjectId 字段的 Mongoose 唯一索引
【发布时间】:2017-07-15 14:20:25
【问题描述】:

尝试为 ObjectId 字段创建唯一索引。 我试过了:

var schema = new Schema({
    field: {
        type: Schema.ObjectId,
        ref: 'SomeModel',
        unique: true,
    } });

还有……

var schema = new Schema({
    field: {
        type: Schema.ObjectId,
        ref: 'SomeModel',
        index: {unique: true}
} });

我无法让它工作,这似乎是一个很常见的问题。

【问题讨论】:

  • Schema.Types.ObjectId?或者你遇到了什么错误?
  • 我不明白你想要什么?请让你的问题更清楚。
  • @jackblank 哎呀。有趣,仍然适用于人口......但不适用于独特性。固定和工作。谢谢!
  • @RaviShankar 问题已解决。我希望该集合中的每个文档只有一个字段 id。领域的唯一性。
  • 其实,如果你看mongoose.Schema,你会发现它也有ObjectId,所以Schema.ObjectIdSchema.Types.Objectid,任何人都应该工作过。

标签: node.js mongodb mongoose database


【解决方案1】:

Schema.Types.ObjectId 而不是Schema.ObjectId

【讨论】:

    【解决方案2】:

    解决了。这是type 定义中的一个错字,我太笨了……

    类型应该是:

    type: Schema.Types.ObjectId
    

    正如杰克布莱克所说。我没有注意到错字,因为我的代码定义仍然适用于查询人口。奇怪的行为。

    【讨论】:

      猜你喜欢
      • 2015-06-16
      • 2010-11-25
      • 1970-01-01
      • 1970-01-01
      • 2016-01-18
      • 1970-01-01
      • 1970-01-01
      • 2011-08-21
      • 2016-11-19
      相关资源
      最近更新 更多