2015-06-07 33 views
0

剛開始使用Node.js,現在我成功配置了Postgres數據庫。我可以從db中獲取記錄,我也可以在console.log中看到記錄cound。 但現在我有點卡住如何在同一頁面上發佈數據。如何在節點js的網頁上發佈數據

我有頁面調用索引有兩個文本字段和一個提交按鈕。當我用username和id提交我的數據時,我在request.post方法中收到了這個請求。

router.post('/', function (req, res) { 
    var username = req.body.username; 
    var userid = req.body.userid; 

    // method which take parameters and return records from db 
    getRecords(userid, username, function (result, found) { 
     if (found) { 
      console.log(result.rows.length); 
     } 
    }); 
}); 

從數據庫成功transcation後,我可以看到控制檯中的記錄計數。但現在我怎麼能發佈這個數據到我從哪裏收到這個請求的同一頁面(index.ejs)。

我試圖做

res.send('/', { title: result.rows.length }); 

和EJS文件

<p>Count is <%= title %></p> 

,但我收到的 「稱號」 沒有定義的錯誤。 那麼我如何顯示計數,以及如何顯示我從數據庫中提取的記錄列表。

回答

0

只要寫red.send(結果),或者如果你想發送多個回覆,你可以red.write(結果),記得夾在您的網頁從發送的NodeJS

+0

可以expalin更有點...如何做到這一點,在EJS文件寫什麼。我寫

計數<%= result.rows.length%>在EJS文件

..但同樣的錯誤,如果你正在使用AJAX調用從頁面到服務器分貝查詢和獲取結果比您需要的結果是沒有定義 – user3173811

+0

將代碼寫入客戶端的ajax調用的成功塊中。我不知道如何在ejs做,對不起! – KlwntSingh

0

您需要使用res.render()如果結果你想用一些變量渲染一個模板。例如:

// or res.render('index', ...) 
res.render('index.ejs', { title: result.rows.length }); 

這裏假設你有你的應用程序的意見,設置正確設置。

+0

不起作用,同樣的錯誤 – user3173811