更新所有型号Express.js

时间:2016-09-07 20:24:27

标签: javascript json node.js mongodb express

我想在快递上使用put请求更新我的所有模型。 例如,我在mongoDB中有一个像这样的集合

{
    '_id': '123'
    'name' : 'jonh',
    'last' : 'smith',
    'email': 'js@dom.com',
    'phone': 'HTC',
    ...[more data]
}

使用put请求我发送新数据(不需要存在所有字段) enter image description here 在我的index.js中,我试过:

router.put('/update/:id', function(req,res){
  Perfiles.findByIdAndUpdate(req.params.id,req, function(err){
    if(err) { res.send(err);}
    res.json({messaje:'Done'});
  });
});

但我的收藏仍然没有变化。我想更新,即使其他字段被删除

{
    '_id': '123'
    'name' : 'Carl',
    'phone': 'iPhone'
}

1 个答案:

答案 0 :(得分:0)

您正在传递req对象作为要更新的值。但是什么是req?

/podcast-episode.aspx?id=528

您需要提供要更新的键和值,具体取决于您是从url的参数或网址查询中发送值,还是在POST对象后再使用req.body

Perfiles.findByIdAndUpdate(req.params.id,req, function(err){
    //what is req?
    console.log(req); 
    // it's a big express' object
})