2013-08-23 3 views
0

J'essaie de récupérer une ligne de la base de données mysql et de l'afficher sur la page (en utilisant des guidons).Express.js - Récupère une ligne de la base de données MySQL

Ceci est mon 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> 
....... 

Pourtant, chaque fois que je tente de récupérer cette entrée, je reçois la vue rendue, mais tous mes champs sont vides.

Je me réjouis de vos commentaires!

Merci!

Répondre

1

modifier cette ligne

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

Les lignes de retour de rappel, comme un tableau d'objets, de sorte que le premier passage une à la vue.

+0

Cela fonctionne parfaitement! Merci beaucoup pour la réponse! –

Questions connexes