2011-03-21 3 views
1

3 개 또는 4 개의 필드를 출력하는 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

관련 문제