2015-09-12 65 views
0

我想在NodeJS中保存JavaScript對象與搖籃,但我沒有得到響應或保存後的錯誤消息。它是一個沒有密碼設置的本地couchdb。連接正常,數據庫存在。 我也使用iriscouch按照https://github.com/iriscouch/follow。因此,在工資表中進行更改時,會調用保存員工方法。後續工作,因爲我已經調試過,但沒有保存發生。couchdb保存與搖籃API和iriscouch跟隨api不工作在NodeJS功能

這是我的代碼。

var employeedb = new(cradle.Connection)().database('employees'); 

employeedb.exists(function (err, exists) { 
    if (err) { 
     console.log('error', err); 
    } else if (exists) { 
     console.log('Database exists'); 
    } else { 
     console.log('database does not exists.'); 
     db.create(); 
     /* populate design documents */ 
    } 
}); 

follow({db:"http://localhost:5984/wages", include_docs:true}, function(error, change) { 
    if(!error) { 
    var employee ={}; 
    employee.name = 'Tom'; 
    saveEmployee(employee); 
} 
}) 

// simple callback after cradle save 
function saveHandler(er, doc){ 
    if (er) return console.log('Error: ', er); 
    console.log(doc); 
} 

function saveEmployee(employee){ 
    //need to check if result exists for that runner and event 
    var returnData = {}; 
    employeedb.save(employee, saveHandler); 
} 

回答

0

代碼工作對我很好,我需要

var cradle = require('cradle'); 

它添加到您的代碼的頂部,並改變

- employeedb.save(result, saveHandler); 
+ employeedb.save(employee, saveHandler); 

爲「編譯」,但經過它將Tom添加到數據庫中。

+0

謝謝佩特,對不起,我應該對我的問題更具體。我已經更新它以包含跟隨功能。 – user1906451

+0

該代碼仍然適用於我,你確定這是你的程序失敗的部分?我正在以完全權限在本地訪問couchDB,您確定可以將文檔添加到數據庫嗎? – Petter

+0

是的數據庫是好的,因爲當我添加代碼var employee = {}; employee.name ='Tom'; saveEmployee(employee);在以下之外它保存正確。 – user1906451