是否可以使用 [dscape/nano][1] 获取 couchdb 中数据库的所有视图的列表?我可以通过 curl 请求得到的最接近的是:
http://URL/DBNAME/_all_docs?key=_design/views&include_docs=true.
以上返回所有视图,包括 javascript 函数。但我只想提取视图名称。
是否可以使用 [dscape/nano][1] 获取 couchdb 中数据库的所有视图的列表?我可以通过 curl 请求得到的最接近的是:
http://URL/DBNAME/_all_docs?key=_design/views&include_docs=true.
以上返回所有视图,包括 javascript 函数。但我只想提取视图名称。
在较新的 CouchDB 版本中,您可以使用“_design_docs”仅列出视图:
GET /dbname/_design_docs
与必须浏览所有文档 (_all_docs) 相比,这将使您更快地获得想要的列表。
见1.3.3。/{db}/_design_docs的官方文档。
注意:截至今天的文档指出这是 CouchDB 2.2 版中的新功能,但我在 2.1 上成功测试了它。
不幸的是,这样做的唯一可能方法是从您包含在问题中的查询结果中提取视图名称。Futon 在填充视图下拉列表时就是这样做的,所以我认为可以安全地假设这是唯一的解决方案。
您可能还希望将查询更改为以下内容以包含所有设计文档,而不仅仅是名为 的文档views
:
GET /dbname/_all_docs?startkey="_design/"&endkey="_design0"&include_docs=true