2016-10-15 2 views
1

Was ist die beste Möglichkeit, innerhalb eines Sails.js Controller von einer Route zu einer anderen umleiten und einige Daten gleichzeitig übertragen. Meine Situation ist, dass ich eine Route habe, die einige Daten erstellt und die Weiterleitungen zurück zu einer anderen Route. Mein Problem ist, dass ich nicht weiß, wie ich eine Fehlermeldung (falls es passiert) zurück auf die andere Route übertrage (weil ich sie dort anzeigen möchte).Sails.js Redirect mit Param

Bruno

+0

Nicht sicher, ob dies getan werden kann. An diesem Punkt würde ich einige Ihrer Controller-Logik in einen Service übertragen, so dass Sie den gleichen Code in beiden Routen verwenden können. – Fissio

+0

Können Sie ein Beispiel geben? Benötigen Sie die zweite Route oder nur Fehlermeldungen? Ich würde wahrscheinlich die Fehlermeldung (oder eine Fehlercode-Kennung) in der URL als GET-Parameter übergeben oder [Flash-Nachrichten] (https://github.com/dudemo/sails-hook-flash) verwenden. – Viktor

+0

Die zweite implementiert einige Logik und nur wenn ein Fehler passiert, ich möchte es an die erste Route weitergeben ... Ansonsten verwende ich einfach res.redirect – Bruno

Antwort

1

Mein Problem ist, dass ich weiß nicht, wie eine Fehlermeldung übertragen auf die andere Route (falls ein geschieht) zurück (weil ich es dort angezeigt werden soll).

[email protected] umfasst Flash-Middleware in Form von https://github.com/jaredhanson/connect-flash:

req.flash('error', payload); 
res.redirect(307, '/'); 
return; 

Um den Fehler in einem anderen Controller zu erhalten:

var error = req.flash('error'); 
+0

sieht gut aus ... Ich werde es später ausprobieren ... aber danke bereits – Bruno