我对 CouchDB 很陌生。已经缺少 SQL 了。
无论如何,我需要创建一个视图来发出文档的一些属性以及所有修订 ID。
像这样的东西
function(doc) {
if (doc.type == 'template') {
emit(doc.owner, {_id: doc._id, _rev: doc._rev, owner: doc.owner, meta: doc.meta, key: doc.key, revisions_ids: What goes here?});
}
}
但我如何告诉它包含所有修订呢?
我知道我可以打电话http://localhost:5984/main/94c4db9eb51f757ceab86e4a9b00cddf http://localhost:5984/main/94c4db9eb51f757ceab86e4a9b00cddf
对于每个文档(来自我的应用程序),但这确实不能很好地扩展。
有没有批量获取修订信息的方法?
任何帮助,将不胜感激!!
CouchDB 修订版是not旨在成为一个版本控制系统。他们是only用于保证写入一致性。 (并防止并发写入期间需要锁)
话虽如此,只有最近的 _rev
数字对于任何给定的文档都是有用的。不仅如此,数据库压缩也会删除所有旧的修订。 (压缩永远不会自动运行,但应该是日常维护的一部分)
正如您可能已经注意到的,您的视图输出最新的_rev
中的数value
您的视图输出。另外,如果您正在使用include_docs=true
,那么_rev
编号也显示在doc
您的查看结果的一部分。
确实存在使用 CouchDB 获取修订历史记录的策略,但它们通常很复杂,并且通常不推荐。 (查看这个问题 https://stackoverflow.com/questions/1333922/couchdb-versioning-strategy and 这篇博文 http://jchris.ic.ht/drl/_design/sofa/_list/post/post-page?startkey=%5B%22Versioning-docs-in-CouchDB%22%5D有关该主题的更多信息)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)