Mongoose子文档可以防止重复

时间:2017-02-26 00:22:12

标签: mongodb mongoose

我的mongoDB有一系列技巧,您可以从中选择收藏夹。

var UserSchema = new mongoose.Schema({
    email: {
    type: String,
    required: true,
    trim: true,
    minlength: 1,
    unique: true,
    validate: {
      validator: validator.isEmail,
      message: '{VALUE} is not a valid email'
    }
  },
  favorites: [{
    _id: {
      type: mongoose.Schema.Types.ObjectId,
      unique: true
    },
    adv_lvl: {
        type: Number,
        required: false,
        default: 0,
        unique: true
    }
  }]
});

我已经成功用技巧填充了收藏夹子文档,使用了findOneAndUpdate和addToSet,并且它不接受添加两个完全相同的技巧(相等的id和adv_lvl),但当我发送请求时一个数组元素的id,但不同的adv_lvl,它将新项添加到数组而不是更新已经存在的数组。我花了5个小时试图找出一些东西,读取mongoDB和mongoose docs和SO问题,但我可能遗漏了一些明显的东西。

0 个答案:

没有答案