2016-12-13 1 views
1

Ich habe eine Indexseite, auf der alle Modelle angezeigt werden und wenn Sie auf Bearbeiten klicken, gehen Sie zur Bearbeitungsseite und nachdem Sie etwas geändert haben, klicken Sie auf Aktualisieren zum Index weitergeleitet werden, alles in Ordnung.Wie man einen Benutzer auf eine vorherige Seite umleitet, auf die die Bearbeitungsschaltfläche geklickt wurde

Und jetzt habe ich eine Show-Ansicht gemacht und in der Show-Ansicht habe ich die gleiche Bearbeitungsschaltfläche, um zur Bearbeitungsseite zu gehen und wenn Sie auf Update klicken, werden Sie natürlich zur Index-Seite weitergeleitet und ich will das nicht . Ich möchte den Benutzer auf die Seite umleiten, auf die der EDIT-Button geklickt wurde.

Wie kann ich Benutzer auf die Seite umleiten, wo sie tatsächlich auf die Bearbeitungsschaltfläche geklickt haben?

Antwort

2

Sie können URL halten in der Sitzung zu go two pages back in Laravel:

$links = session->has('links') ? session('links') : []; // Get data from session 
array_unshift($links, $_SERVER['REQUEST_URI']); // Add current URI to an array 
session(compact('links')); // Save an array to session 

Dann können Sie zwei Seiten zurück:

return redirect(session('links')[2]); 
0

können Sie verwenden:

return back(); 

Es kehrt zum zurück, wie es so offensichtlich ist. Sie können hier diese und andere Hilfsfunktionen Forschung:

https://laravel.com/docs/5.3/helpers#method-back

+0

die Frage sorgfältig lesen. Alexey hat die richtige Antwort. Ich will nicht eine Seite zurückgehen ... aber zwei! – lewis4u

+0

Es war ein wenig kompliziert, das Problem zu verstehen. Können Sie Ihre Update-Methode in Ihren Controller einfügen? Ich denke, wir können es mit einer benannten Route lösen. –

+0

Das Problem ist, dass ich den Benutzer nicht immer auf die gleiche Seite nach dem Editieren umleiten will .... ich möchte ihn auf die Seite umleiten, von wo aus er auf die Bearbeitungsschaltfläche geklickt hat .... und es gibt keine Option in Laravel dafür ... Sie müssen die URL vor "zurück" fangen und das ist genau das, was Alexey antwortete – lewis4u

Verwandte Themen