为什么有两种方法来更新文档?

时间:2017-08-18 08:08:22

标签: couchdb couchdb-2.0

作为CouchDB初学者,我很难理解如何更新文档。

当我阅读文档时,我发现这对我来说非常困惑:

1)更新现有文件

  

要更新现有文档,您必须在_rev参数中指定当前版本号。

来源:Chapter 10.4.1 /db/doc

2)更新功能

  

更新处理程序是客户端可以请求调用将创建或更新文档的服务器端逻辑的函数。

来源:Chapter 6.1.4 Design Documents

您能告诉我您希望更新文件的方式吗?

修改1:

假设数据结构只是一个带有一些基本字段的简单car文档。

{
    "_id": "123",
    "name": "911",
    "brand": "Porsche",
    "maxHP": "100",
    "owner": "Lorna"
}

现在owner更改,您还会使用选项1吗?选项1有一个很大的缺点,因为我不能只编辑一个字段。我需要先检索每个字段,只编辑owner字段,然后发回整个文档。我刚试了一下,发现这很啰嗦。嗯...

1 个答案:

答案 0 :(得分:2)

大多数情况下,您要选择选项1“更新现有文档”;这适用于将数据存储在数据库中的标准文档。另一个选项涉及设计文档,例如视图(也是文档,这对新的CouchDB用户来说肯定是混乱的),这是完全不同的。

坚持选项1,祝你好运:)