In Grails umleitet, wenn ich so etwas tun:Grails Erhaltung Flash-Mitteilung zwischen
def someAction() {
//.......
flash.message = "some message"
[:]
}
Dann in someAction.gsp, würde es die Flash-Nachricht angezeigt werden soll.
Aber wenn ihr etwas wie folgt aus:
def someAction() {
// ......
flash.message = "some message"
redirect uri: "${createLink(controller: 'someothercontroller', action: 'someotheraction')}"
}
Dann in obigen Fall in someotheraction.gsp die flash.message nicht haben.
Meine Frage ist, wie ich von someAction zu einer anderen (möglicherweise in einem anderen Controller oder gleichen Controller) weitergeben.
Ich weiß, ich kann etwas tun wie params.flash = flash.message
und in der anderen Aktion verwenden Sie diese params.flash zu flash.message
dort zuweisen. Bei diesem Ansatz muss ich jedoch immer alle möglichen Weiterleitungen kennen, die nicht immer passieren können.
Also gibt es einen besseren und vielleicht einen "Standard" Weg, um die Flash-Nachricht bis zur allerletzten Redirect (das gsp endlich macht) zu erhalten?
Aber dann bleibt die Nachricht in der gesamten Sitzung. – Armaiti
Vielleicht verstehe ich nicht, was Sie brauchen, wenn Sie die Nachricht erhalten möchten, sollten Sie sie in der Sitzung speichern und sie löschen, wenn Sie wissen, dass Sie sie nicht wieder benötigen. Aber wenn Sie wollen, dass die flash.message direkt nach der Verwendung einer Weiterleitung verfügbar ist, funktioniert es gut, aber verwenden Sie Redirect auf diese Weise: Redirect (Controller: 'Somothercontroller', Aktion: 'Somotheraction').Ich würde gerne wissen, warum der negative Punkt, die Art und Weise, wie Sie die Frage stellen, so aussieht, als ob Sie die Nachricht durch viele Weiterleitungen erhalten möchten, nicht nur eine. – ingemi