“errmsg”:“insertDocument ::由:: 11000 E11000引起的重复键错误索引:database.categories。$ category_1 dup key:{:null}

时间:2016-06-25 20:06:04

标签: node.js mongodb mongoose mean-stack mongoose-schema

我有这些猫鼬模式

var subCategory = new Schema({
name : {
        type: String
      },
description : {
        type : String
      }
});

var CategorySchema = new Schema({
    name: {
    type: String,
    required: true,
    unique : true,
    sparse: true
   },
   description : {
    type: String
   },
   subCategory : [subCategory]
});

当我尝试插入第二个文档时,我得到重复错误,如下所示:

insertDocument ::由:: 11000引起E11000重复键错误索引:phychometric_database.categories。$ category_1 dup key:{:null}

据我所知,这是因为在索引路径之一的文档中已经存在空值。但是我将值传递给文档中的“名称”路径,如下所示。

var newCategory = new Category.Categories({
            name: req.body.name,
            description: req.body.description
          });
          // save the user
          newCategory.save(function(err) {
            if (err) {
                console.log(err);
                return res.json({success: false, msg: 'Category already exists.'});
            }
            res.json({success: true, msg: 'Successful created new category.'});
          });

任何人都可以解释一下吗?

0 个答案:

没有答案