有没有办法在 couchdb 现有文档中添加新字段/值

Posted

技术标签:

【中文标题】有没有办法在 couchdb 现有文档中添加新字段/值【英文标题】:is there way add new field/value in couchdb existed document 【发布时间】:2017-10-02 03:52:16 【问题描述】:

有没有办法将新字段及其值添加到现有的所有 couchdb 文档中,如下所示,我想在电子邮件 docType 的现有文档中添加“emailType”:“true”,不知道如何使用 updatehandler 来实现这一点,谢谢

 
       "_id": "37fbfee963e9a989becbe9fe746891eb",
       "_rev": "5-28bb00c72c0807772051d8d71b67eda0",
       "docType":"emails",
       "emails": [
           
               "emailAddress": "aaaa",
               "emailType": "true"
           
     

这是我得到的现有电子邮件文档

function(doc) 
    if (doc.emails && doc.docType == "emails") 
      var emailsLength = doc.emails.length;
      for (var i = 0; i < emailsLength ; i++) 
        emit(doc.emails[i].emailAddress, doc);
    
  

【问题讨论】:

How to update a document's record/field in couchdb的可能重复 【参考方案1】:

很遗憾,您不能使用更新功能一次修改多个文档。为此,您必须编写自己的脚本来迭代您描述的视图发出的所有文档。

这是文档中的 how to create update functions 和 how to call them。但是,它们不是修改文档的唯一方法。也许bulk_docs 操作对你有用。

【讨论】:

以上是关于有没有办法在 couchdb 现有文档中添加新字段/值的主要内容,如果未能解决你的问题,请参考以下文章

向 MongoDB 集合中的每个文档添加新字段

使用 mongoose 通过 update 方法向 mongodb 中的现有文档添加新字段

使用 mongoose 通过 update 方法向 mongodb 中的现有文档添加新字段

如何使用 Evently 保存更新的 CouchDB 文档?

包括所有现有字段并向文档添加新字段

将字段添加到 Django 的现有数据库(版本 < 1.7)