Ich bin neu zu sequelize. Ich benutze MySQL als meine Datenbank. Ich habe eine Sequelize-Abfrage, die die E-Mail-ID aus der Datenbank findet. Mit dem Ergebnis dieser Abfrage habe ich die ID dieser Zeile erhalten. Jetzt muss ich diesen Wert zurückgeben. Kann mir bitte jemand helfen wie das geht.Geben Sie einen Wert von Sequelize Abfrage
Hier ist mein Code.
var userId = getUserId(email_address);
function getUserId(email_address) {
models.users.findOne({
where: {
email: email_address
}
}).then(function(result) {
if (result) {
var applicantId = result.id;
return applicantId; // This is what I need to do
} else {
console.log("Could not find Email");
}
});
}
Hier muss ich die Variable AntragstellerID an die aufrufende Funktion zurückgeben.
Zunächst kann man nicht nur den Wert zurück. Die DB-Abfrage ist ein asynchroner Aufruf und muss als solcher behandelt werden. Ihre Funktion getUserId() muss eine Promise zurückgeben. Geben Sie einfach die models.users.findOne() -Methode zurück. –
Danke für die Antwort @Himmet. Wenn ich models.users.findOne() zurückgebe, erhalte ich ein Versprechungsobjekt bei userId. Wie auf den Wert von diesem Zusicherungsobjekt zugreifen? Kannst du mir bitte helfen? –
Hier ist ein Tutorial zur Verwendung von JavaScript verspricht http://www.sitepoint.com/overview-javascript-promises/ Ich schlage vor, Sie beginnen dort. – grimurd