我有一个服务器端过滤器(javascript:function(doc, req)
)设置,它会检查文档类型并为复制状态返回true或false。我有一个场景,我必须检查文档的内容说DocumentA,以决定是否复制DocumentB。但是没有将doc
传递给javascript的序列。例如DocumentB可以在DocumentA之前到达同步,此时我不知道在没有DocumentA知识的情况下return
会发生什么。我怎样才能做到这一点?
答案 0 :(得分:0)
首先,关于过滤。您可以按频道和文档ID进行过滤。以下是docs(截至v1.2)的相关部分:
复制可以使用过滤器来限制他们传输的文档。这可以用于限制下载到设备的大型远程数据库的数量,或者保留一些本地文档的私有性。 Couchbase Sync Gateway使用的一种特殊类型的过滤器是拉动复制将从中下载的一组通道。也可以将复制限制为一组明确的文档ID。
根据您的说明,一种解决方案可能是为特定文档类型(您的DocumentA)设置频道,为您的其他文档设置另一种频道。然后,使用一次性复制来保证订购。