首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在CouchDB/Node.js中使用Cradle删除键值对?

如何在CouchDB/Node.js中使用Cradle删除键值对?
EN

Stack Overflow用户
提问于 2013-03-13 07:10:19
回答 2查看 502关注 0票数 0

我一直在使用couchDB客户端Cradle进行大量工作。但是,我有一个用键-值对填充的文档,并且我正在尝试删除其中的特定行。

documentation,中,我找不到一种不删除整个文档或用空值更新文档的删除方法。有谁能给我指个方向吗?我觉得这很可能是一个很多人都会遇到的非常简单的问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-13 17:49:29

在CouchDB中,不支持部分文档更新(偶尔会讨论对此的支持,但由于没有公认的方法来修补JSON,因此它永远不会走得太远),因此您必须使用删除了不需要的键/值对的副本来更新整个文档。

票数 2
EN

Stack Overflow用户

发布于 2013-03-14 08:03:17

好了,我找到了一个解决方案来解决这个问题。

不是创建一个包含键-值对列表的文档,而是只创建一个包含一个字段的文档,并为它的值插入键值对的JSON。这样,您就可以提取值、删除字段并将其保存回原始值,而无需重新创建整个文档。

下面是一个使用Cradle的示例:

代码语言:javascript
复制
db.get('document', function (err, doc) {
  var inside_key_values = doc.key_value_pair;

  delete inside_key_values[key_to_delete];

  db.merge("document", {
        key_value_pair: inside_key_values
      }, function (err, res) {
        console.log('New key value pairs saved')
    });

});

这一切都是基于@djc对couchDB端缺乏支持的很好的回应,希望其他人能发现这个变通方法是有价值的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15374045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档