La récupération de données à partir de MongoDB à l'aide de NodeJS avec Express

Ok, donc dans les derniers jours, j'ai commencé à jouer avec Nœud (parce que je pense que je devrais apprendre quelque chose qui est vraiment utile et peut me trouver un emploi). Maintenant, je sais comment servir les pages, de base et de routage. Nice. Mais je veux apprendre comment interroger des bases de données pour plus d'informations.

Droit maintenant, je suis en train de créer une application qui sert comme un webcomic site web. Donc, en théorie, l'application doit interroger la base de données lorsque je tape dans l'url http://localhost:3000/comic/<comicid>

J'ai le code suivant dans mon app.js fichier:

router.get('/', function(req, res) {  
    var name = getName();
    console.log(name); //this prints "undefined"

    res.render('index', {
        title: name,
        year: date.getFullYear()
    });
});

function getName(){
    db.test.find({name: "Renato"}, function(err, objs){
    var returnable_name;
        if (objs.length == 1)
        {
            returnable_name = objs[0].name;
            console.log(returnable_name); //this prints "Renato", as it should
            return returnable_name;
        }
    });
}

Avec cette configuration, j'obtiens console.log(getName()) à la sortie de "undefined" dans la console, mais je n'ai aucune idée de pourquoi il ne reçoit pas le seul élément que la requête peut effectivement trouver dans la base de données.

J'ai essayé de chercher dans la et même pour des exemples dans Google, mais sans succès.

Comment diable suis-je censé trouver le paramètre nom de l'objet?

OriginalL'auteur Renato Oliveira | 2015-01-17