2011-03-21 95 views
1

我有一個CouchDB視圖,我從中發出三個或四個字段。CouchDB查看問題 - 如何返回「」(空字符串)而不是null?

如果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}) }" 
     } 
    } 
} 

感謝

回答

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 || "") 
    }) 
} 
+0

增加了一個類似的版本 – JasonSmith 2011-03-21 14:39:53

相關問題