我在CouchDB / Cloudant中有三个文档如下:
all_docs :[{
_id: "content1"
files: ["fileA", "fileB", "fileC"]
}, {
_id: "content2"
files: ["fileD", "fileE", "fileC"]
}, {
_id: "content3"
files: ["fileF", "fileG", "fileH"]
}
我需要获取content1和content2作为FileC的结果,我可以将FileC作为密钥传递。
有没有办法编写一个返回doc ids(content1和content2)的视图,其中文件是FileC?
答案 0 :(得分:4)
这只需要一个标准的,直截了当的视图。
作为documented:
请注意,单个文档可能会多次调用
emit()
,因此几个不同的密钥可能会提供相同的文档。
因此,您只需要为文档中的每个文件调用emit()
即可。像这样:
function (doc) {
for (i = 0; i < doc.files.length; i++) {
emit(doc.files[0])
}
}