Ich möchte die Seite anzeigen, für die sich der Benutzer anmeldet ...
Ein Benutzer muss sich vor dem Anzeigen von Seiten anmelden. Wenn nicht, wird der Benutzer zur Anmeldung weitergeleitet. An dieser Stelle möchte ich den Namen der Seite anzeigen, zu der sie gehen möchten, und sie nach dem Einloggen anzeigen.
Im Session-Controller unter dem Befehl create def habe ich die folgende Instant-Variable erstellt:
@intended_url = Session::get("url.intended", url("/"));
und die Ansichtsseite enthält Folgendes:
<h4>Sign in to go back to <%= @intended_url %>.
Leider wird nichts angezeigt?
Antworten:
0 für die Antwort № 1Wenn Sie etwas in der Sitzung speichern möchten, müssen Sie dies in einem Controller tun, der Zugriff darauf hat. Dies bedeutet, dass das Setzen der Sitzung in einem Controller erfolgt, der für eine Seite bestimmt ist. Du machst das so
Sitzung [: Seitenname = @intended_id
Dann können Sie es mit abrufen
Anzeige ------> Sitzung [: Seitenname]
Ihr Problem kann auch gelöst werden, indem Sie stattdessen den Controller von der Seite aus aufrufen.
Controller.controller_action
Daraufhin wird der Aktionsname Ihres Controllers angezeigt. Wenn Sie dem Entwurf von Ruby On Rails folgen, wird Ihr Seitenname angezeigt.