gpt4 book ai didi

javascript - Resolve Pouch Couch 数据库

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:33:17 24 4
gpt4 key购买 nike

我正在开发一个离线工作的原型(prototype)网站,它利用 Pouch DB,以便在上线时同步备份到服务器上的 CouchDB。

Pouch DB conflicts guide说:

To resolve the conflict, you simpy put() a new revision on top of the current winner.

你是怎么做到的?我尝试了以下功能,但都没有按预期工作:

function (current, chosen) {
chosen._rev = current._rev;
chosen._conflicts = [];
db.put(chosen);
};

function (chosen) {;
db.put(chosen);
};

top 函数接受两个文档:

  • 当前获胜者的文档
  • 用户选择成为新获胜者的文档。

我在某些地方 ( like here ) 读到删除丢失的冲突是必要的,但如果可能的话我宁愿不删除任何东西,Pouch DB 指南没有提到这一点。

最佳答案

你是对的;您需要删除丢失的冲突(听起来很讨厌)。我写指南时犯了一个错误;除非您删除它们,否则冲突仍然存在。

顺便说一句,删除冲突的修订意味着在它们之上添加一个“墓碑”。因此,除非您显式压缩数据库,否则实际上没有任何内容被“删除”。 PouchDB 和 CouchDB 都是这种情况。

编辑:我修复了文档。 无论如何,您能否更新指南以反射(reflect)您需要删除任何不需要的冲突修订这一事实?我们喜欢拉取请求,尤其是那些亲身处理过此类问题的人! :) 需要修改的文件是 this one .

关于javascript - Resolve Pouch Couch 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27193171/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com