Routing after logging in

Hello:
I am using Authlogic in my application. I am using before_filter to
restrict access to certain sections of my web application and that is
working (i.e. if i am not logged in and try to access those pages - the
application gives me the login form to log-in). However, every time I
login - it brings me to ‘root_url’. How do I define the path so instead
of bringing me back to ‘root_url’ it takes me to the restricted page
where I was trying to go in the first page?

Here are the code files:

–create in my user_sessions_controller.rb:
class UserSessionsController < ApplicationController

def create
@user_session = UserSession.new(params[:user_session])
if @user_session.save
flash[:notice] = “Successfully logged in.”
redirect_to root_url
else
render :action => ‘new’
end
end

end


–my application_controller.rb:
class ApplicationController < ActionController::Base

application_controller.rb

filter_parameter_logging :password

helper_method :current_user

private

def current_user_session
return @current_user_session if defined?(@current_user_session)
@current_user_session = UserSession.find
end

def current_user
return @current_user if defined?(@current_user)
@current_user = current_user_session && current_user_session.record
end

def require_user
unless current_user
store_location
flash[:notice] = “You must be logged in to access this page”
redirect_to new_user_session_url
return false
end
end

def require_no_user
if current_user
store_location
flash[:notice] = “You must be logged out to access this page”
redirect_to account_url
return false
end
end

def store_location
session[:return_to] = request.request_uri
end

def redirect_back_or_default(default)
redirect_to(session[:return_to] || default)
session[:return_to] = nil
end
end

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs