【发布时间】:2015-09-25 09:11:49
【问题描述】:
我正在尝试在 Mongoose 中修改文档,但更改似乎没有保存。函数本身肯定是被调用的,每次都报错。记录在 ID 推送到数组之前和之后所做的更改表明它已添加,但没有保存。
function(req, res) {
var id = req.user._id;
Moment.findOne({ _id: req.body.moment._id }, function (err, moment) {
moment.comments[req.body.index].likes.push(id);
moment.save(function(err) {
console.log('saved');
if (err) console.log(err);
res.json(moment);
});
}
})
};
架构
var MomentSchema = new Schema({
name: {
type: String,
trim: true,
default: '',
required: true
},
username: {
type: String,
required: true
},
startTime: {
type: Date,
trim: true,
required: true
},
endTime: {
type: Date,
trim: true,
required: true
},
comments: {
type: Array
}
});
【问题讨论】:
-
此代码无法单独运行...
-
您是否尝试过保存完成后的比较时刻?例如moment.save(function (err, newdoc) { console.log(newdoc.toObject() }) 看看保存后的样子?它可能会保存它但忽略你的添加,因为你的架构太严格了