Für die App, die ich schreibe, verwende ich einfache handgemachte Authentifizierung (wie auf Railscast.com beschrieben). Unter Verwendung eines Codes aus dem NiftyGenerators-Juwel von Ryan Bates habe ich ein Authentifizierungsmodell mit einigen nützlichen Methoden zur Authentifizierung. Dieses Modul ist in application_controller.rb
enthalten. Eine der Methoden, die ich verwenden möchte, heißt redirect_to_target_or_default
. Ich weiß, dass das ist, was ich brauche, um einen Benutzer zu der Seite umzuleiten, auf der sie waren, nachdem sie sich authentifiziert haben, aber ich weiß nicht, wo ich diese Methode nennen sollte? Wenn jemand mir eine Idee geben könnte, wie man diese Methode benutzt, würde ich es sehr schätzen.Umleiten zur vorherigen URL nach dem Login - Rails
ControllerAuthenticaion Modulcode
module ControllerAuthentication
# Makes these methods helper methods in the controller that includes this module.
def self.included(controller)
controller.send :helper_method,
:current_admin, :logged_in?,
:redirect_to_target_or_default
end
def current_admin
@current_admin ||= Admin.find(session[:admin_id]) if session[:admin_id]
end
def logged_in?
current_admin
end
def login_required
unless logged_in?
store_target_location
redirect_to login_url,
:alert => "You must first log in before accessing this page."
end
end
def redirect_to_target_or_default(default, *args)
redirect_to(session[:return_to] || default, *args)
session[:return_to] = nil
end
def redirect_to_or_default(target, *args)
redirect_to(target || default, *args)
end
def store_target_location
session[:return_to] = request.url
end
end
Genau das, was ich gesucht habe! Vielen Dank! – agentbanks217