我有一个过滤掉数据的视图。我想在我的搜索条件中添加一个检查=>如果文档中不存在某个字段,请不要考虑该文档。
以下是我的观看代码, studentId 可能不会出现在所有文档中。
function (doc, meta) {
if(meta.id && meta.id.indexOf("DOCUMENT_") == 0 && doc.studentId != null) {
emit([doc.studentId, doc.studentStatus, doc.studentName], null);
}
}
任何指针?
答案 0 :(得分:2)
在您的代码中,只需使用您之前在if语句中使用的相同语法:
if(doc.studentId && meta.id && meta.id.indexOf("DOCUMENT_") == 0) ...
请注意以下
如果如果studentId 已定义,(doc.studentId ...
将返回true,否则为false。
答案 1 :(得分:0)
只是一个很小的优化 - 如果存储桶中的许多文档都缺少它,您可能希望将doc.studentId移至条件的开头。
另外,所有文档都没有meta.id?测试它似乎很奇怪......