Получение всех подпунктов из всех документов с картой Couchbase / уменьшенный вид - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть документы Couchbase со структурой, подобной этой:

{
"subscriberIds": [
       {
           "type": "END_USER",
           "identity": "00000000223"
       }
   ],
   "userDataId": "SUB-00000000223",
   "status": "ACTIVATED",
   "subscriptions": [
       {
           "id": "Something1",
           "attributes": [
               {
                   "value": "Active",
                   "name": "Status"
               }
           ],
           "priority": "1",
           "subscriptionStartDate": somedate,
           "productShortName": "Something1"
       },
       {
           "id": "Something2",
           "attributes": [
               {
                   "value": "Active",
                   "name": "Status"
               }
           ],
           "priority": "1",
           "subscriptionStartDate": somedate,
           "productShortName": "Something2"
       }
   ],

    }

И я пытаюсь написать представление для получения всех «подписок» из всех документов в корзине как:

{"total_rows":900,"rows":[
{"id":"Something1","key":null,"value":"00000000223"},
{"id":"Something2","key":null,"value":"00000000223"},
...

но я не могу получить вложенный элемент от do c

    function (doc, meta) {

    for (var i in doc.subscriptions) {
      emit(doc.subscriptions.id, doc.id);
    }
}

Я знаю, что это возможно, но, видимо, я не совсем понимаю концепцию представлений

1 Ответ

0 голосов
/ 09 апреля 2020
for (var i in doc.subscriptions) {
    emit(doc.subscriptions[i].id, doc.id);
}
...