我正在使用NodeJS模块查询Cloudant数据库,包括特定的字段搜索以及db.list()函数。但是,我(大概正确)也返回了所有设计文件。
有没有办法防止返回设计文档,即使用列表时,不运行特定查询来检查_id,或者测试数据库中每个响应项?
我找不到在文档中执行此操作的方法,只提及_design文档的查询和更新与任何其他文档一样,大概是为什么列表中包含了这些文档。
由于
答案 0 :(得分:1)
db.list()
函数正在访问Cloudant的_all_docs端点,例如。
https://reader.cloudant.com/animaldb/_all_docs
按键顺序返回所有数据库文档(包括设计文档)。
作为所有设计文件' ids以" _"开头我们只能访问"真实"文件说
https://reader.cloudant.com/animaldb/_all_docs?startkey=%22a%22
即。找到我的所有文件,其开头是以" a"。
开头的那些文件在Node.js中,这看起来像:
db.list({startkey:'a', include_docs:true}, function(err, data) {
console.log(data);
})
或者,您可以使用create and index来查询和返回数据库的子集。设计文档不考虑用于索引目的,因此不会出现在结果集中。