2014-06-25 24 views
0

我在我的couch-db中有兩種類型的文檔(都在同一個數據庫中),現在我創建了一個視圖,它可以通過「_id」鏈接兩個文檔並使用沙發返回數據-db視圖URL。現在我想從map函數中獲取兩種類型的數據。文檔和代碼的類型如下所示。在CouchDB中鏈接文檔

文獻

department { 
       "_id": "1", 
       "department": "Computers", 
       "type": "Department", 
       "room_no": "102", 
       "HOD": "Mr. G Rahul", 
       "floor": "1st Floor" 
      } 

student { 
      "_id": "fdf370e2f43d4af1b505b8913502a5e4", 
      "_rev": "1-16df9a4cd45ca69009ab6c9767425a8e", 
      "student Name": "H Ravi", 
      "date_of_birth": "March 1, 1993", 
      "roll_no": "55", 
      "inter_marks": "820", 
      "secondary_marks": "420" 
      "department_id": "1", 
      "type": "student" 
     } 

function(doc) { 
      var id,department,student,hod,dob; 
      if(doc.type == 'student') { 
        id = doc.department_id; 
        dob = new Date(doc.date_of_birth) 
       student = doc;  
     } 
     if(doc.type == 'department') { 
      if(doc._id == 'id') { 
      hod = doc.HOD; 
       department = doc; 
     } 
     } 
    emit([dob,hod], {'_id': id,"student_doc": student,"depart_doc":department}); 
} 

第二如果條件沒有在上述功能執行地圖用功能。以上代碼僅爲地圖功能

回答

0

裹一個if語句中的兩個測試:

function(doc) { 
    var id,department,student,hod,dob; 
    if(doc.type) { 
     if(doc.type === 'student') { ... } 
     if(doc.type === 'department') { ... } 
    } 
    emit([dob,hod], {'_id': id,"student_doc": student,"depart_doc":department}); 
} 
+0

這裏我主要的問題是「基於** **部門標識在學生類型的文件我想通過使用地圖功能來獲取部門的文檔類型 – Raghavendra

+0

它不能這樣工作。地圖功能一次只檢查一個文檔併發出您從該文檔指定的字段。 –