MongoDB / Express API不会更新条目但返回200

时间:2018-04-29 22:05:01

标签: node.js mongodb reactjs express

我目前正在努力解决我的React网络应用中的一个问题,该问题不允许我更新Mongo数据库中的条目。我发布新文档并轻松获取所有条目,但是当我尝试更新其中一部分时,我收到200响应,但文档永远不会更新。以下是我的反应应用程序的调用:

fetch(API + this.state.project.pin, {
  method: 'POST',
  headers: {
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  },
  body: updatedFunctions
})

和相应的Express代码

 app.post('/:pin', (req, res) => {

  db.collection('projects').update({pin:req.params}, {$set: {functions:req.body}}, function(err, count, result) {
    if (err) return console.log(err)
    console.log('saved to database')
    res.redirect('/')
  })
})

有谁知道这个方向发送到了错误的方向?根据我的逻辑,它应该用匹配的引脚替换文档中的函数字段和" updatedFunctions"对象

1 个答案:

答案 0 :(得分:1)

您的搜索条件似乎有误:

im[0,1,:]

您的版本将在db.collection('projects').update({pin: req.params.pin}, [...] 键中搜索对象。现在,它会在pin键中搜索标量/字符串。