Ich verwende AuthLogic, um Benutzer in meiner Rails-App zu authentifizieren. Dieser Teil ist eingerichtet und funktioniert ordnungsgemäß.Wie behalte ich den gleichen Controller und die gleiche Aktion in einer Seiten-URL beim erneuten Rendern einer Aktion in Rails?
Ich habe die folgende Route definiert:
map.login '/account/login', :controller => :user_sessions, :action => :new
Aufruf Rake Routen gibt, was ich erwarte:
login /account/login {:controller=>"user_sessions", :action=>"new"}
Wenn jemand eine Anmeldung einreicht, ruft sie UserSessionsController.create:
def create
@user_session = UserSession.new(params[:user_session])
if @user_session.save
flash[:notice] = "Login successful!"
redirect_back_or_default account_url
else
render :action => :new
end
end
Wenn @ user_session.save fehlschlägt, werden die entsprechenden Fehlermeldungen auf dem sc angezeigt reen. Die Browser-URL ändert sich jedoch auch in "http: // localhost: 3000/user_session" anstatt auf "http: // localhost: 3000/account/login" zu bleiben.
Ich nehme an, das Problem ist, was ich in die Rendermethode füttere. Was sollte ich es füttern?
Wie mache ich es in Rails 3? – lnguyen55
vergiss, mit: via! – lnguyen55