1

我正在尝试按 ID 更新已经存在的文档。我的意图是通过 id 找到文档,然后用“json”中的新值更改其“firstName”,然后将其更新到 CouchDB 数据库中。这是我的代码:

def updateDoc(self, id, json):
    doc = self.db.get(id)
    doc["firstName"] = json["firstName"]
    doc_id, doc_rev = self.db.save(doc)
    print doc_id, doc_rev
    print "Saved"
//"json" is retrieved from PUT request (request.json)

self.db.save(doc)我收到异常为"too many values to unpack"

我正在使用 Bottle 框架、Python 2.7 和 Couch Query。

如何通过 id 更新文档?什么是正确的方法?

4

1 回答 1

3

couchdb-python中,该db.save(doc)方法返回 _id 和 _rev的元组。您正在使用couch-query - 一个有点不同的项目,它也有一个db.save(doc)方法,但它返回一个不同的结果。所以你的代码应该是这样的:

def updateDoc(self, id, json):
    doc = self.db.get(id)
    doc["firstName"] = json["firstName"]
    doc = self.db.save(doc)
    print doc['_id'], doc['_rev']
    print "Saved"
于 2014-05-11T18:14:21.680 回答