Je veux que mon contrôleur de voiles pour effectuer ces étapes:Changer plus d'une table via le contrôleur de voiles
mot -Ajouter à la table Mot
-Prendre ID du mot créé et ajoutez-le aux côtés de l'ID de leçon à un table différente
module.exports = {
add: function(req,res){
var eng=req.param('english'),
pol=req.param('polish'),
lessonID=req.param('lessonID');
var wordID=this.create(eng,pol,lessonID);
console.log(wordID);
},
create: function(eng,pol,lessonID){
sails.models.word.create({
english:eng,
polish:pol})
.exec(function (word){
return word.id
});
}
};
Je ne suis pas sûr comment retourner le motID à la fonction d'ajout. En ce moment, wordID est 'indéfini'. Je l'ai essayé de changer la déclaration de créer à:
create(req,res)
puis retour
res.json(200, { id: word.id });
mais cela n'a rien changé. Quelle est la bonne façon de traiter les fonctions de ce type?
Il reste encore quelques problèmes à résoudre ... comme 'var motID' sera toujours indéfini car la fonction de création elle-même ne retourne pas. Et puisque 'add' accepte' (req, res) ', il est probablement supposé faire quelque chose avec' res' comme 'res.send', etc, et il devrait le faire dans callback de' create'. – arbuthnott
@arbuthnott mon mauvais, juste copié collé le code. J'ai oublié de supprimer l'assignation de variable. Merci de l'avoir signalé. – MjZac