/ / wie der Inhalt der Session [: intented_url] mit Hilfe von Schienen 4 angezeigt wird - Ruby-on-Rails, Session, View

wie man den Inhalt von session [: intented_url] mit rails 4 - ruby-on-rails, session, view anzeigt

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 № 1

Wenn 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.