我是CouchDB / PouchDB的新手,直到现在我才能以某种方式管理它的开始。在开始实际应用程序的开发之前,我正在使用couchdb-python库将初始值发送到我的CouchDB。在这里,我有一个数据库,其中包含我想要包含的数据模板以及我将在应用程序中使用的所有数据的实际数据库。
couch = couchdb.Server()
templates = couch['templates']
couch.delete('data')
data = couch.create('data')
在Python中,我有一个循环,我将一个接一个的值发送到CouchDB:
value = templates['Template01']
value.update({ '_id' : 'Some ID' })
value.update({'Other Attribute': 'Some Value'})
...
data.save(value)
一直工作正常,我需要多次运行,因为我的数据必须调整。在我对结果感到满意后,我开始在Javascript中创建我的应用程序。现在我将PouchDB与data
数据库同步,它也在工作。但是,我发现我需要在Python代码中更改一些内容,所以我再次运行第一个python脚本,但现在我收到了这个错误:
couchdb.http.ResourceConflict: (u'conflict', u'Document update conflict.')
我尝试destroy()
pouchDB数据库data
并删除了CouchDB数据库。但是我仍然在代码的这一部分得到了这个错误:
data.save(value)
我还不明白的是,在此错误发生之前,实际上会将一些值传递给数据库。所以有些值是saved()
进入db。
我读到它与文档的_rev
值有关,但我无法得到答案。希望有人可以在这里提供帮助。