【发布时间】:2016-02-10 14:34:37
【问题描述】:
目前正在做一个在线课程来学习一些 Node.js、Express 和 MongoDB。
在本课程中有一个 api 部分,他们教你做一些简单的事情,但我遇到了一个问题,课程视频显示他正在更新项目的名称,并且 api 可以更新更多字段,他的字段保持价值,我的字段实际上最终为空。
代码是
app.put('/products/:id', function(req, res){
db.products.findAndModify({query: {_id: mongojs.ObjectId(req.params.id)},
update:{$set:{
name: req.body.name,
category: req.body.category,
description: req.body.description
}},
new: true
}, function(err, doc){
if(err){
res.send(err);
} else {
console.log('Updating Product...');
res.json(doc);
}
});
});
谁能向我解释一下,如果只更新名称,我如何避免让我们说类别和描述最终为空?
【问题讨论】:
-
进行更新时
req.body.category和req.body.description的值是否也会为空? -
这就是我猜的问题,为此使用body-parser。但奇怪的是,在视频课程中,即使他通过相同的方法更新,他的值也不会为空,通过 Firefox 轻松休息
标签: node.js mongodb express mongojs findandmodify