使用CouchDB-Python获取文档级修订的完整列表?

问题描述:

我在工作couchdb-python(http://code.google.com/p/couchdb-python/),我想知道我是否有办法检索在文档级别发生的修订的完整列表 ?使用CouchDB-Python获取文档级修订的完整列表?

假设我有一个名为“电影”的数据库,它包含几个文档。 我的每个文档都有3个以上的版本。

我可以根据修订检索我的文档吗?

如果是,如何?我没有看到任何明显的方法使用CouchDB-Python

Database.revisions方法可能是你想要的,http://code.google.com/p/couchdb-python/source/browse/couchdb/client.py#545

我不确定关于couchdb-python,但是您可以通过HTTP API获取文档的整个已知修订历史记录。

CouchDB Document API文档中了解所有相关信息。

正常查询:

$ curl jhs.couchone.com/db/doc 
{ _id: 'doc', 
    _rev: '3-825cb35de44c433bfb2df415563a19de' } 

添加?revs=true看到老版本中的数组。

$ curl jhs.couchone.com/db/doc?revs=true 
{ _id: 'doc', 
    _rev: '3-825cb35de44c433bfb2df415563a19de', 
    _revisions: 
    { start: 3, 
    ids: 
     [ '825cb35de44c433bfb2df415563a19de', 
     '7051cbe5c8faecd085a3fa619e6e6337', 
     '967a00dff5e02add41819138abb3284d' ] } } 

您也可以了解有关修订,比如他们是否仍然可用的更多详细资料(即最后一次压实后添加他们,你可以获取它们)添加?revs_info=true

$ curl jhs.couchone.com/db/doc?revs_info=true 
{ _id: 'doc', 
    _rev: '3-825cb35de44c433bfb2df415563a19de', 
    _revs_info: 
    [ { rev: '3-825cb35de44c433bfb2df415563a19de', 
     status: 'available' }, 
    { rev: '2-7051cbe5c8faecd085a3fa619e6e6337', 
     status: 'available' }, 
    { rev: '1-967a00dff5e02add41819138abb3284d', 
     status: 'available' } ] } 
+0

你好,谢谢你的回复。我可以根据修订历史记录检索文档吗?例如,ID为132,修订版3的文件? – DjangoRocks 2011-02-18 06:46:07