我的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问题,但我可能遗漏了一些明显的东西。