javascript - 更新函数 javascript 和 mongodb

标签 javascript jquery node.js mongodb express

我正在构建我自己的网络应用程序,但我正在为如何替换之前添加的注释而苦苦挣扎。到目前为止,使用 nodejs 和 express 添加 jquery 是有效的,所以我可以看到我的笔记已添加到 mongodb。但是我创建了一个替换按钮,它不会替换以前的注释,而只会将它添加到数据库中。删除按钮工作正常。
这是我认为在查找要查看的数据库时可能会出现一些问题的代码。我用预设音符(Dan,新音符)替换以前的音符(名称,音符)。 我所有的输出都显示了一个工作正常的 .ejs 文件(更新,添加所有基于 mlab 数据库的注释)。 提前致谢。

update.addEventListener('click', function () {
  fetch('/notes', {
    method: 'put',
    headers: {'Content-Type': 'application/json'},
    body: JSON.stringify({
      'name': 'Dan',
      'quote': 'new note'
    })
  }).then(response => {
    if (response.ok) return response.json()
  }).then(data => {
    console.log(data)
  })
})

最佳答案

您需要确定要更新的实体。我想当你删除一个笔记时,你正在发送这样的东西:

fetch('/notes/ID', {method: 'delete'})

当你想更新一个实体时,你需要做类似的事情:

fetch('/notes/ID', {
    method: 'put',
    headers: {'Content-Type': 'application/json'},
    body: JSON.stringify({
      'name': 'Dan',
      'quote': 'new note'
    })

(将 ID 替换为 mongo 实体的真实 _id)

关于javascript - 更新函数 javascript 和 mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49781926/

相关文章:

javascript - meteor JS : Callback after template helper was updated

jquery - 可能的递归问题,事件冲突 : Can't set . droppable() 和 .draggable() 到同一个选择器,

node.js - "Cannot find module"在 node.js 上运行单元测试时 react 为公共(public)包中的对等依赖

javascript - 如何将现代版本的 Vue (Vue CLI3) 与 Electron 结合使用?

javascript - Vue Component Props 未更新

javascript - tinymce中一行的背景颜色

javascript - 如何使 JavaScript 不在 Rails 中应用整个页面?

javascript - 在哪里包含 jquery 和 jquery 移动库

javascript - CSS 箭头的旋转和 javascript 切换

node.js - 更新到 Meteor 1.4 时出错