【发布时间】:2017-12-17 23:01:47
【问题描述】:
我正在尝试使用以下代码更新 MongoDB 文档。当我运行它时,我收到以下错误:
error= MongoError: 将更新应用到文档 {_id: ObjectId('596684d72084af52d51b4574') , ...},(不可变)字段 '_id' 被发现已被更改为 _id: ObjectId('596734cd9a40f6561bcd0c2a')
我一辈子都看不到我在哪里更改 _id 字段。
谁能看出我做错了什么?
谢谢。
exports.updateSubmission_post = function(req, res) {
var submission = new Submission();
submission.publication = req.body.sub_publication;
submission.submission_date = req.body.sub_submission_date;
submission.response_date = req.body.sub_response_date;
submission.response = req.body.sub_response;
Submission.findByIdAndUpdate(req.body.sub_submissionId, submission, {}, function (err, submission) {
if (err) {
console.log('error= ' + err);
return err;
}else{
【问题讨论】:
-
当然,您正在“
submission”中更改它,其中new实例具有不同的_id值。与其将整个对象扔到服务器上,不如学习通过$set更新属性