这是我的部分
{
create:123455,
audio:5218,
question:{
subject : 5
}
}
然后我想添加一个有问题的url数组,如
{
create:123455,
audio:5218,
question:{
subject : 5,
url:["aaaaaaaaa"]
}
}
我尝试过使用
this.findOneAndUpdate({
answerID: id
}, {
$addToSet:{question:{imgUrl:url}}
}, {
upsert:true
}).exec(cb);
当我运行该功能时出现了一些错误
Cannot apply $addToSet modifier to non-array\n
这是我的猫鼬模型
var AnswerSchema = new Schema({
audio: {type: String},
created: { type: Number },
question: {
imgUrl: { type: Array },
subject: { type: String },
},
});
答案 0 :(得分:1)
您需要使用"dot notation"
Model.findOneAndUpdate(
{ 'answerID': id },
{ '$addToSet': { 'question.imgUrl': /* your new value */ } },
{ upsert: true }
).exec(cb);