簡體   English   中英

Node.js和MySQL-2個不相關的查詢到同一頁面

[英]Node.js and MySQL - 2 unrelated queries to the same page

我的問題是2分:

  1. 我有一個express.js文件,顯示了一個表單。 該表單需要從數據庫中提取2個不同的查詢。 一個用於創建選擇下拉列表,另一個用於創建復選框。 如何從node.js文件向同一頁面發送2個(或更多)不相關的查詢?

  2. 由於我正在使用

    app.post('/results',urlencodedParser,function(req, res) {

該頁面被重定向到localhost:3000/results 然后git顯示沒有這樣的頁面(即使我的views文件夾中有一個名為results.ejs的頁面。我在做什么錯呢?

我無法提供更多信息,而無法回答您的第二個問題(不過,坦白地說,無論如何,這應該是一個單獨的問題)。

至於第一個問題,有幾種方法可以給貓咪蒙皮。 我自己,我決定基於重用。 創建select和checkbox組的列表將在其他地方使用還是僅在此頁面上使用?

如果僅在此頁面上,我可能會使用async庫的parallel()函數或Promise.all來運行兩個查詢並以這種方式返回結果集。

如果要重用,我會將它們打包為中間件,然后將結果附加到請求或req.locals對象。

異步版本如下所示:

const async = require('async');

// later, in your handler

app.get('/results', function(req,res){
   async.parallel({
     checkboxes : checkboxQueryFn,
     selectList : selectListQueryFn
   }, (e, bothQueries) => {
      // if either query errored, you'll get an 'e' object here, otherwise bothQueries will be an object where bothQueries.checkboxes will have the results of that query and bothQueries.selectList will have the results of that one. 
   });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM