Ich versuche, diese Funktionalität mit Devise zu implementieren, aber ich kann es nicht tun, außer auf die Homepage umleiten.Umleiten zur vorherigen Seite nach dem Login mit Devise
Ich muss etwas in meine after_sign_in_path_for
Methode einfügen.
Ich habe versucht:
def after_sign_in_path_for(resource)
request.env['omniauth.origin'] || stored_location_for(resource) || root_url
super
end
Ich habe bei this question sah und so ziemlich alle anderen Posten dieses SO in Bezug auf ohne Erfolg. Offenbar Entwickeln speichert die bisherigen Standorte standardmäßig, aber ich habe es selbst versucht zu tun:
after_filter :store_location
def store_location
# store last url as long as it isn't a /users path
session[:previous_url] = request.fullpath unless request.fullpath =~ /\/users/
end
def after_sign_in_path_for(resource)
session[:previous_url] || root_path
end
ich Dutzende von verschiedenen Kombinationen der oben genannten und Antworten in anderen Fragen getan haben. Warum funktionieren diese nicht? Ich bekomme nicht einmal Fehler oder irgendetwas, im Grunde ignoriert es einfach meinen Code und leitet auf die Homepage um, egal was ich mache.
Haben Sie überprüft die [Entwickeln wiki] (https://github.com/plataformatec/devise/wiki/How-To: -Redirect-zurück zur aktuellen Seite nach der Anmeldung, -Auszeichnung, -Auszeichnung, -Aktualisierung)? –
@NicNilov Ja, ich habe ziemlich jedes Stück Code in dort versucht. – 123