发生冲突时,PouchDB删除的文件是否可以“取消删除”?

时间:2016-09-14 12:52:12

标签: pouchdb

让我提供一个场景:

我有一份_id: 'doc-123'的文件。我通过db.put(doc)调用_deleted: true来删除它。

在单独的设备上,我创建了一个或多个doc-123的新修订版,但我从不删除该文档。

当他们同步并发生冲突时,我需要保证_deleted: true版本将获胜。

通过PouchDB(也许还有CouchDB?)冲突解决算法,如果此删除的文档与该文档的新修订(但未删除)之间确实发生了最终冲突,则可以保证删除的文件修订将永远是获胜的?

我想确保冲突的情况不会导致文件复活。

默认情况下是这种行为还是我需要为这种情况编写冲突解决代码?

我读了PouchDB conflicts document并没有看到任何提及此事。

1 个答案:

答案 0 :(得分:1)

必须手动解决CouchDB / PouchDB中的冲突(因为在数据库中不会为您执行此操作。您仍然可以自动执行此操作)。由于您必须手动执行此操作,因此您可以选择满足您需求的任何逻辑。