MongooseJS无法禁用字段唯一

nob*_*es_ 5 mongoose

这是我的mongoosejs模式。我将名称唯一设置为false,但这是我得到的:MongoError:insertDocument ::由:: 11000 E11000重复键错误索引引起:testdb1.images。$ name_1 dup键:{:“ aaa”}

imageSchema = new Schema({
    url: {
        type: String,
        unique: true,
        required: true
    },

    category: {
        type: String,
        required: true
    },

    vote: {
        type: Number,
        required: true
    },

    name: {
        type: String,
        unique: false,
        required: true
    },

    voteArray: [],
    favorite: false,
    tags: []

});
Run Code Online (Sandbox Code Playgroud)

任何想法如何解决这个问题?建议?

Joh*_*yHK 7

Mongoose 不会修改现有索引,因此您需要在 MongoDB shell 中删除该索引,然后让 Mongoose 使用架构中的定义重新创建它:

> db.images.dropIndex('name_1');
Run Code Online (Sandbox Code Playgroud)


小智 7

转到 DB(MongoDB)--> 集合 --> Your_Table --> 索引 --> 右键单击​​唯一字段 --> 退出索引 --> 取消选中唯一字段 --> 保存

插图图片