2015-03-03 8 views
1

Я относительно новичок в CouchDB, и я использую cradle для взаимодействия с ним в node.js. Я пытаюсь включить в документ поле «count» и создать обработчик обновления, который увеличивает его, поэтому мне не нужно делать GET, а затем PUT. В настоящее время, я определяю его как такое право после создания объекта DB:Как создать обработчик обновления couchdb через колыбель?

db.save('_design/main', { 
    updates: {//Not sure I'm doing this right. Documentation isn't clear to me 
     updateCount: 
      function (doc) { 
       if (!doc.count) { 
        doc.count = 0; 
       } 
       doc.rowImportCount++; 
       return [doc, JSON.stringify(doc.count)]; 
      } 
    }, 
    findByFileUuid: { 
     map: function (doc) { 
      ...view stuff, works perfectly fine... 
     }, 
     reduce: '_sum' 
    } 
} 

Позже в программе, когда я пытаюсь обновить граф, я это делаю так:

db.update('main/updates/updateCount',fileUuid,{},function(res){ 
      console.log(res.message); 
     }); 

Но это не сработает. res.message говорит, что «точка не определена».

Я не могу видеть, что я делаю неправильно, и ни документация для couchdb, ни колыбели не очень полезна. Обратите внимание, что все работает нормально без моих попыток обновления count.

Спасибо!

+0

Я не уверен, люльки, но раздел обновления выглядит нормально, если обновление CMD делает пута, то ваш URL будет be '_design/main/_update/updateCount/' ex 'db.update ('_ design/main/_update/updateCount' + fileUuid, ...)' – twilson63

+0

О, ладно. Я посмотрю. Я решил решить отслеживание прогресса в программе, а затем просто обновить переменную в couchdb каждые x процентов, обойдя проблему. В любом случае, спасибо! –

ответ

1

Этот способ работает для меня:

db.update('main/updateCount', fileUuid, { rev: doc._rev }, function(res){ 
    console.log(res.message); 
}); 

или

db.update('main/updateCount', fileUuid, { }, function(res){ 
    console.log(res.message); 
}); 
+0

Хорошо, спасибо за помощь! Я закончил делать что-то, что не требует счетчика, но если мне это нужно, я обязательно посмотрю! –

 Смежные вопросы

  • Нет связанных вопросов^_^