2017-07-25 66 views
0

您好我正在使用Express框架,我使用句柄來從我的MySQL表中呈現數據。嘗試使用下面的代碼呈現數據時,而不是呈現顯示[object object]的值。我在下面發佈了我的代碼。使用快速框架在句柄中呈現數據

index.js:

var query = connection.query('SELECT * FROM requestor_auth WHERE question_id = ? AND answer = ? AND app_key = ? LIMIT 1', [data.qid, data.ansvalue, data.appid], function(err,rows) 
    { 

     if(err) { 
      console.log("Error Selecting : %s ",err); 
      res.redirect('/'); 
     } else { 
      res.render('requestform',{page_title:"Edit Customers - Node.js",data:rows}); 
      } 

requestform.hbs:

<div class="addressto"> 
       <h4>To,</h4> 
       <br> 
        <span style="font-size:18px;margin-left:10px;">The Collector Of</span> 
        <input type="text" value="{{data}}" class="line" class="text-line" style="margin-left:35px;"><br> 

    </div> 

顯示爲[對象對象]的形式輸入值。我試圖data.key_value呈現數據,但它不顯示值。 請給我一個解決方案。謝謝。

回答

0

因爲MySQL反應的結果是數組所以它應該是:

var query = connection.query('SELECT * FROM requestor_auth WHERE question_id = ? AND answer = ? AND app_key = ? LIMIT 1', [data.qid, data.ansvalue, data.appid], function(err,rows) { 

     if(err) { 
      console.log("Error Selecting : %s ",err); 
      res.redirect('/'); 
     } else { 
      res.render('requestform',{page_title:"Edit Customers - Node.js",data:rows[0]}); 
      } 

如果有一個相同的錯誤,你應該console.log()你的結果來檢查值。

+0

很好,@ Burdy數據顯示在窗體中。謝謝 –

0

回調函數中的rows參數是由選擇查詢總是一個對象數組。使用手柄時,您應該可以執行以下操作:

<div class="addressto"> 
    <h4>To,</h4> 
    <br> 
    <span style="font-size:18px;margin-left:10px;">The Collector Of</span> 
    <input type="text" value="{{data[0].answer}}" class="line text-line" style="margin-left:35px;"> 
    <br> 
</div> 

還有多個類名可以在一個類屬性中。

+0

嗨德克,我已經試過你的代碼,但它拋出解析錯誤。期待ID,STRING,BOOLEAN等 –