【问题标题】:Sync views between pouchdb and couchdb在 pouchdb 和 couchdb 之间同步视图
【发布时间】:2015-08-07 11:31:52
【问题描述】:

我已经能够将数据从我的 cloudant 实例同步到我基于 nodejs 的 pouchdb,但是我需要设置一个辅助搜索索引,因此我在 couchdb 实例上创建了一个视图,但是我无法在我的同步中看到它pouchdb 实例。

我在 cloudant 中看到它,在所有文档中,但是在 pouchdb 上同步和调用 alldocs 之后,它不存在。另外,我正在使用 pouchdb-find 插件,我无法引用二级索引搜索字段。当然从 pouchdb 如果设置二级索引,它工作正常。

我错过了什么吗?同步不会复制 PouchDB 中的设计文档吗?如果没有,创建持久二级索引的最佳方法是什么?

有什么好的文档吗? (Nolan....?)说到文档或支持,是否有 IRC 房间或用户社区对 couchdb 的其他实时支持?

感谢您的关注, 保罗

【问题讨论】:

    标签: node.js couchdb pouchdb cloudant


    【解决方案1】:

    pouchdb-find 是对 Cloudant 查询语言的重新实现,而不是他们的搜索索引(我认为您正在谈论的是)。它也没有完成;我只写了大约一半的运算符。 :) 你可能还想试试 pouchdb-quick-search 插件,它用于全文搜索。

    一般来说,我通常给人们的建议是根本不同步设计文档——只需使用过滤器进行复制以避免同步设计文档。然后,您可以创建针对您所使用的任何平台(PouchDB、CouchDB、Cloudant、各种 PouchDB 插件等)进行优化的设计文档。

    是的,我们通常在 IRC 频道和邮件列表中非常敏感,但这是一项小型操作,因为我们没有得到 Cloudant 或 Couchbase 或任何人的赞助。 PouchDB 的核心团队都是爱好者。 :)

    【讨论】:

    • 啊,明白了。非常感谢诺兰的快速回复。你真的是 pouchdb/couchdb 的拥护者。我只是想确保我没有忽略某种方法。感谢您的确认,并为我节省了更多的时间,因为我会失去继续寻找的机会。
    • Nolan,实际上我没有看到设计文档正在同步。正如我所说,我在 cloudant 上添加了一个设计文档,但是当我同步到我的本地袋实例时,我没有看到设计文档出现在袋中。但是,我确实看到了云雾 gui(当然)。同步时我需要做些什么特别的事情才能让它过来吗?
    • 您还提到创建针对任何平台优化的设计文档?它只是一个二级索引,是否会在不同平台上进行不同的优化?
    • “平台”是指 CouchDB、PouchDB、Cloudant 等。
    【解决方案2】:

    也许这很愚蠢,但是访问沙发的用户是否具有管理员角色?只有管​​理员可以查看和编辑设计文档。

    【讨论】:

    • 是的,这就是诺兰昨晚提到的。我使用的身份验证信息没有。诺兰也确实指出,二级索引无论如何都不会自动重建。
    • 我没有看到诺兰的评论。重要的是,这是问题所在吗?
    • 实际上,我无法解释原因,但它整天都在同步设计文档和所有内容,甚至使用只有 r/w 权限(不是管理员或复制)的新用户到新的-内存数据库。问题是即使使用设计文档/视图/索引,pouchdb 也无法使用它,可能是因为该部分尚未实现(诺兰在他之前的回复中提到)。
    • 我同意诺兰的观点,即共享设计文档不是一个好主意。但是couchdb实际上是支持视图的,所以我不明白你在说什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-10
    • 1970-01-01
    • 2016-11-26
    • 2020-08-02
    • 1970-01-01
    相关资源
    最近更新 更多