我有一个应用程序,其中有一个教师数据库,其中包含用于班级的ID数组。创建新班级时,我正在尝试查找教师的数据库条目,并使用新班级的ID更新班级ID的数组。但是,当我尝试更新它时,什么也没有发生。

这是我的代码:

 data.classID = id;
new course(data).save((error) => {
    if(error){
        console.log('oops! Could not save course');
    } else {
        conn3.close();
    }
});
//update instructor's classID's variable in intructor database
instructor.findOne({"instructorEmail":data.Instructor}, (err,x)=>{
        var arr = x.classIDs;
        arr.push(id);
        instructor.findOneAndUpdate({"instructorEmail":data.Instructor},{$set:{classIDs: arr}});
})

最佳答案

如果您只是尝试将id附加到classIDs数组,则可以使用$ push运算符。

instructor.findOneAndUpdate(
  { "instructorEmail": data.Instructor },
  { $push: { classIDS: id } },
  { new: true },
  (err, updatedDoc) => {
    // what ever u want to do with the updated document
  })

10-02 14:08