javascript - Displaying data structure instead of data -


on page shows rows of [object object] know there's value in because in console outputs right data. outputs [object object] no data in when trying display on page. if console.log shows correct data. seems html page renders row data structure , not data itself.

below route page

var express = require('express'); var router = express.router(); var mysql = require('mysql');   /* home page */ router.get('/', function(req, res, next) {   var connection = mysql.createconnection({     host : '',     user : '',     password : '',     database : ''   });    connection.connect();    connection.query('select hashtag recipients', function(err, rows, fields) {     if (!err) {       console.log(rows);       //send rows template engine render html.       res.render('mysql', {         rows: rows,         title:''       });     } else {       console.log('error while performing query.');     }   });   connection.end(); });  // important module.exports = router; 

below view page

<html>  <head>   <title> <%= title %></title> </head>  <body>   <table>     <tr>some heading</tr>     <% for(var i=0; i< rows.length; i++) { %>       <tr>         <td>           <%= rows[i] %>         </td>       </tr>       <% } %>    </table> </body>  </html> 

"[object object]" result of converting object string. conversion performed automatically inside template. change part interpolate data object object string property.

for example

  res.render('mysql', {     rows: rows,     fields: fields,     title:''   }); 

and view:

<html>  <head>   <title> <%= title %></title> </head>  <body>   <table>     <tr>some heading</tr>     <% for(var i=0; i< rows.length; i++) { %>       <tr>         <% for(var f=0; f< fields.length; f++) { %>         <td>           <%= rows[i][fields[f].name] %>         </td>         <% } %>       </tr>       <% } %>    </table> </body>  </html> 

the reason console.log printing content of object looks @ type of parameter , various smart tricks print content nicely via util.inspect (look @ format* functions below inspect)


Comments