在nano中更新CouchDB文档

在nano中更新CouchDB文档,couchdb,couchdb-nano,Couchdb,Couchdb Nano,我需要得到一份文件,更改/插入/删除一些字段并放回原处 “put”操作需要文档的当前版本,但在nano中,我找不到任何将版本作为参数并将文档插入数据库的函数 如何使用nano做到这一点?注意:这是通用算法,它不特定于任何库,因为该方法不提供任何自动更新文档的功能 获取文档,保存当前修订,应用您的更改,并尝试发送带有已保存修订号的文档 确保同时处理文档更改时可能出现的409个冲突响应 在这种情况下,您应该重新蚀刻文档,保存修订号,重新应用更改,然后尝试将其与新修订一起再次发送 下面是算法: 获取文

我需要得到一份文件,更改/插入/删除一些字段并放回原处

“put”操作需要文档的当前版本,但在nano中,我找不到任何将版本作为参数并将文档插入数据库的函数

如何使用nano做到这一点?

注意:这是通用算法,它不特定于任何库,因为该方法不提供任何自动更新文档的功能

获取文档,保存当前修订,应用您的更改,并尝试发送带有已保存修订号的文档

确保同时处理文档更改时可能出现的409个冲突响应

在这种情况下,您应该重新蚀刻文档,保存修订号,重新应用更改,然后尝试将其与新修订一起再次发送

下面是算法:

  • 获取文档
  • 保存_rev
  • 应用更改
  • 尝试使用保存的版本发送更新的文档
  • 如果是409,请转至步骤1

  • 查看和CouchDB的wiki页面,了解更多关于该问题的信息。您可能也会觉得很有帮助。

    我知道我需要修改。问题是nano中“修订”参数的函数是什么。正确答案,但在另一个问题上。这是正确的答案,即使是对你的问题。只需阅读文档。只有一个
    inser()
    方法,这意味着您必须对要插入的文档设置正确的版本。请显示代码,好吗?它与您已有的代码几乎相同,但您只需将获取文档时获得的
    \u rev
    添加到要插入的更新文档中。对不起,我现在意识到,这不是参数,而是有值的字段