まず、私はNode.JSに非常に慣れていないことを指摘しておきます。 NodeJSを使用して、複数のテーブルと情報を含むページを作成しようとしています。私の問題は、SQLクエリの結果をHTMLテーブルに取得できないことです。現在私は.send
エクスプレスを使用してデータをHTMLページに変換します。
私が使用するコード:
var http = require('http');
http.createServer(function(req, res) {});
var mysql = require("mysql");
var express = require('express');
var app = express();
console.log('Creating the http server');
con.query('SELECT id ,name FROM customer', function(err, rows, fields)
{
console.log('Connection result error '+err);
console.log('num of records is '+rows.length);
app.get('/', function (req, res) {
res.send(rows);
});
});
app.listen(3002, function () {
console.log('Example app listening on port 3000!');
})
これにより、私のsqlステートメントのすべてのデータがHTMLページに出力されます。
{"id":"1","name":"Robert"}
{"id":"2","name":"John"}
{"id":"3","name":"Jack"}
{"id":"4","name":"Will"}
結果として私が欲しいのは:
id Name
1 Robert
2 John
3 Jack
4 Will
..etc
これはNode JSで行うこともできますか?
Jadeと同様に Embedded JS を使用できます
<table>
<tr>
<th>id</th><th>Name</th>
</tr>
<% for (var i = 0; i < data.length; i++) { %>
<tr>
<td><%= data[i].id %></td>
<td><%= data[i].name %></td>
</tr>
<% } %>
</table>
これは、オブジェクトの配列(data
として保存したもの)を反復処理し、それに基づいてテーブルを作成します。