PouchDB通过ID获取文档,其中包含特定字符串

时间:2015-01-25 15:37:07

标签: couchdb pouchdb

我想获得包含特定字符串的所有文档,我似乎无法找到解决方案..

例如我有以下doc ID

vw_10
vw_11
bmw_12
vw_13
bmw_14
volvo_15
vw_16

如何使用字符串vw_"在"中获取allDocs它?

3 个答案:

答案 0 :(得分:8)

使用batch fetch API

db.allDocs({startkey: "vm_", endkey: "vm_\ufff0"})

注意:\ufff0是最高的Unicode字符,用作指定有序字符串范围的标记。

答案 1 :(得分:2)

您可以使用PouchDB查找插件API,这种方法比allDocs IMO更复杂,可用于查询。使用PouchDB查找插件,有一个正则表达式搜索运算符,可以让你做到这一点。

db.find({selector: {name: {$regext: '/vw_'}}});

在撰写本文时它位于BETA中,但我们即将发布一个生产应用程序。到目前为止,这是多么稳定。有关Pouch Db Find

的更多信息,请参阅https://github.com/nolanlawson/pouchdb-find

答案 2 :(得分:0)

您最好拥有要搜索的密钥的视图。这可确保键被索引。否则,搜索可能会太慢。