我如何删除一个键值对使用摇篮在CouchDB/Node.js



我一直在使用Cradle, couchDB客户端。但是,我有一个充满键值对的文档,并且我试图删除其中的特定行。

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

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

好了,我找到了一个解决这个问题的办法。

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

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

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端缺乏支持的强烈反应。

相关内容

  • 没有找到相关文章

最新更新