无法更新mongoose Schema的验证

时间:2016-11-14 05:44:12

标签: node.js mongodb express mongoose

我对mongoose很安静,所以我创建了一个像这样的用户模型

var UserSchema = new mongoose.Schema({
    name: { 
        type: String,
        lowercase:true,
        unique:true
    },
    phone: {
        type:String,
        unique:true,
        sparse:true,
        required:true
    }});
mongoose.model('User',UserSchema);

我创建了这个模型,但后来我认为名称字段不应该是唯一的,所以我通过从名称字段中删除唯一属性来更新我的模型。 但是mongoose保留了一些缓存或者某些东西,因为即使在我的模型文件中更新代码时,当我执行用户注册请求时,我收到此错误,即重复键名称字段,并且它不接受2个文档的相同名称。

这是我收到的错误:

  

{[MongoError:E11000重复密钥错误集合:kiotapp.users   index:name_1 dup key:{:“arihant daga 5”}] name:'MongoError',
  消息:'E11000重复密钥错误集合:kiotapp.users索引:   name_1 dup key:{:“arihant daga 5”}',

1 个答案:

答案 0 :(得分:1)

db.collection.dropIndex()

参考:https://docs.mongodb.com/v3.0/tutorial/remove-indexes /