2017-02-17 57 views
0

我是新的nodejs,我需要一些幫助。我已經app.js文件,在這裏我做一個查詢到cloudantDB使用納米驅動程序,代碼如下:如何將cloudant db數據從app.js文件發送到ejs模板

var nano = require('nano')('localhost:3000'), 
db = nano.use('compania_cia') 
result = "; 

db.get('compania_cia', function(err, body) { 
    if (!err) { 
     result = body; 

    } 
}); 

我試圖發送「結果」,以這種方式查看聯繫人:

app.get('/contact', function(req, res) { 


    res.render('contact', { ct: req._csrfToken,result:result}); 
}); 

但是,當我運行我的應用程序時,出現錯誤500.

感謝您的幫助。

回答

0

您的錯誤描述並不真正有用,因爲Web服務器可能會返回HTTP狀態碼500的原因很多。您是否檢查過服務器日誌?它應該包含您需要的信息。看一下你的couchdb/Cloudant特定的代碼片段有幾個問題。將該代碼保存到文件中並嘗試在本地運行(node blah.js)。你應該能夠快速識別和解決的問題,如果你

  • 確認您擁有在package.json指定爲依賴的nano包(和本地npm install nano安裝了這個測試)
  • 確保數據庫URL格式和值是正確的
  • 確認有在你的代碼

列出的所有問題,沒有語法錯誤是致命的,並可能導致你所得到的內部服務器錯誤。你的代碼可能如下進行了更正如下:

var nano = require('nano')('http://localhost:5984'), 
db = nano.use('mydatabase'), 
result = ''; 

db.get('mydocumentid', function(err, body) { 
    if(err) { 
    console.log('Error: ' + JSON.stringify(err)); 
    } 
    else { 
    console.log('Body: ' + JSON.stringify(body)); 
    } 
}); 
+0

嗨@ptitzler,我跑了blah.js文件,我可以得到迴應與我cloudantdb的表的JSON結構,但我真的問題是如何能我把這個回覆發送到ejs視圖。 – user2773603

+0

當我在我的瀏覽器localhost:3000/contact上執行時,我只能看到內部服務器錯誤。所以,我試圖把調用數據庫的代碼放到app.get('/ contact',function(req,res)...但是我得到了同樣的錯誤...非常感謝.. – user2773603

+0

對不起,除非你可以產生更多的細節(比如服務器上的錯誤消息),但我無法幫助您做出任何事情。根據您迄今共享的內容,問題似乎不是由數據庫引起的。 – ptitzler

相關問題