我有这个功能:
router.route('/banner/:_id')
.post((req, res, next) => {
console.log('got here');
var r = req.body;
// console.log(r.message);
// console.log(req.params._id);
try {
Banner.findOne({_id: req.params._id}, (e, doc) => {
console.log(doc);
if (e) console.log(e);
doc.time = r.time;
doc.date = r.date;
doc.technicalIssue = r.technicalIssue;
doc.message = r.message;
doc.save(e => console.log(e));
})
}
catch (e) {
console.log(e);
}
res.redirect('/admin');
});
当我发帖时我得到了这个:
POST /admin/banner/5ac1574c734d1d4f8af95a69 302 41.225 ms - 56
{ partnersLogos: [],
_id: 5ac1574c734d1d4f8af95a69,
date: '1 May',
time: '1 - 5pm',
technicalIssue: '',
message: 'test2',
__v: 1 }
null
所以我可以看到它找到了所需的文件。问题是它没有保存它。这可能是一些愚蠢的错误,但我无法在任何地方看到它。有什么想法吗?
我在mlab上使用Express和Mongoose。
我尝试模仿this回答,但出了点问题。
横幅模型:
var mongoose = require('mongoose');
var bannerSchema = new mongoose.Schema({
technicalIssue: String,
time: String,
date: String,
partnersLogos: [],
});
module.exports = mongoose.model('banner', bannerSchema);
答案 0 :(得分:0)
我忘记在模型中添加message
字段。