E11000在UNDEFINED值中重复键错误集合。怎么避免这个?

时间:2017-04-04 19:51:37

标签: node.js mongodb express mongoose passport.js

我正在创建一个带有node,mongoose和express的项目。

我在mongoose中有这个架构

const userSchema = new Schema({
  local: {
    email: {
      type: String,
      lowercase: true,
      unique: true,
      ....
    },
    password: {
      type: String
    }
  },
  google: {
    googleId: String,
    email: String
  },
  ....
};

因为我有两种护照策略(本地的经典电子邮件,密码和谷歌)。

但是当我使用不同的Google帐户创建两个帐户时。控制台向我显示了这个错误:

{ MongoError: E11000 duplicate key error collection: xxx.users index: local.email_1 dup key: { : null }

什么?? “唯一”检测到重复的两个未定义值?

因此。我怎么能避免这个?

谢谢:)

1 个答案:

答案 0 :(得分:0)

你好,我刚刚解决了错误 所有您需要做的就是去Robomongo,在您认为是用户打开的收藏集中,您会发现indexex删除了给您解决错误的错误