Dewise nie przekierowuje do adresu URL podanego przez after_sign_in_path_for
. To w rzeczywistości nazywa mój zwyczaj after_sign_in_path_for
. Oblicza adres URL, którego oczekuję, ale obliczenie nie nastąpi. Pozostaje na stronie sign_in
, ale faktyczne zalogowanie się nie ma miejsca.Wymyślić after_sign_in_path_for działa, ale przekierowanie się nie stanie
Próbowałem kilka wersji devise:
gem 'devise'
i
gem 'devise', :git => 'git://github.com/plataformatec/devise.git'
sam rezultat.
Mam zwyczaj after_sign_in_path_for
def after_sign_in_path_for(resource)
str = stored_location_for(resource) || stored_location || root_path
debugger
str
end
def stored_location
session.delete(:return_to)
end
def store_location
session[:return_to] = request.fullpath
end
jest nazywany, to daje prawidłowego adresu URL daje str
dokładnie tak, jak można oczekiwać, że dają. Debuger zatrzymuje się w tym momencie ...
Po stronie cont
strona pozostaje jednak pod numerem sign_in
, mimo że nastąpi rejestracja.
Uważam, że to nie jest mój kodeks. To może być problem z Devise. Czy ktokolwiek, kto to ma pracuje, podziel się ze mną dokładną wersją Devise, która działa z tobą.
Czy możesz potwierdzić, że dane logowania są prawidłowe? 'response_with' sprawdzi element zasobu pod kątem błędów przed przejściem do podanej lokalizacji i zrobi to po rozwiązaniu niestandardowej ścieżki – PinnyM