我有一个CouchDB视图,我可以从中发出三到四个字段。
如果给定记录的PHONE_MOBILE字段为空,则视图输出包含null
相反,我希望它发出“”(即空白字符串/无)
实现这一目标的最佳方法是什么?这是视图代码:
{
"_id": "_design/blah",
"_rev": "20-e07e50de179d0df5e7bce52fdb7ee4d2",
"views": {
"by_surname3": {
"map": "function(doc) { if (doc.SURNAME) emit(doc.SURNAME.toLowerCase(), {SURNAME: doc.SURNAME, FIRSTNAME: doc.FIRSTNAME, PHONE_MOBILE: doc.PHONE_MOBILE}) }"
}
}
}
由于
答案 0 :(得分:3)
您可以使用以下内容:
function(doc) {
if (doc.SURNAME)
emit(doc.SURNAME.toLowerCase(), {
SURNAME: doc.SURNAME,
FIRSTNAME: doc.FIRSTNAME,
PHONE_MOBILE: (doc.PHONE_MOBILE ? doc.PHONE_MOBILE : "")
})
}
或者,如果您愿意,或运算符可提供默认值。
function(doc) {
if (doc.SURNAME)
emit(doc.SURNAME.toLowerCase(), {
SURNAME: doc.SURNAME,
FIRSTNAME: doc.FIRSTNAME,
PHONE_MOBILE: (doc.PHONE_MOBILE || "")
})
}