Express.js - 从MySQL数据库中检索一行

时间:2013-08-23 13:34:42

标签: javascript mysql node.js express

我正在尝试从mysql数据库中检索一行并将其显示在页面上(使用把手)。

这是我的API:

//app.js
app.get('/human/view/:request', api.getHuman);

---------------

//api.js
var mysql = require('mysql');

var client = mysql.createConnection({
host        :   'localhost',
user        :   'vlad',
password    :   'xxx',
database    :   'resources'
});

exports.getHuman = function(req, res) {

client.query('SELECT * FROM humans WHERE request = ?', req.params.request, function(err, result) {
    if (err) {
        throw err;
    }

    res.render('viewHuman', { title: 'View Resources', result: result });
});
}

-----------------------------------------

// viewHuman View

<h2>{{ result.firstname }} + ' ' + {{ result.lastName }}</h2>
<hr>

<h4>Request ID</h4>
<p> {{ result.request }} </p>
<hr>
.......

但是,每当我尝试检索该条目时,我都会渲染视图,但我的所有字段都是空的。

我期待着您的反馈!

谢谢!

1 个答案:

答案 0 :(得分:1)

更改此行

    res.render('viewHuman', { title: 'View Resources', result: result[0] });

回调返回行,作为对象数组,因此只需将第一个传递给视图。