I do this:

class UserSessionsController < ApplicationController
def create
@user = User.where(login: params['user_session']['login']).first
@user_session = UserSession.create params[:user_session], @user, 
params[:user_session][:organization_id]
if @user_session.errors.empty?
current_user = @user_session.record
current_user.save!

redirect_back_or_default user_info_path
else
render action: :new
end
end
end

class UserSession < Authlogic::Session::Base
def self.create params, user, org_id
result = new params
result.user = user
result.org_id = org_id.to_i
result
end
end

but then when I do this during the redirect after successfully supposedly 
creating @user_session:

class ApplicationController < ActionController::Base
before_filter :require_user

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
end

UserSession.find isn’t finding anything.

I’m using the default cookie session. I dare say I’m doing something 
monumentally simple and stupid, but I just can’t see it right now. Can anyone 
else?

-- 
SD Ruby mailing list
[email protected]
http://groups.google.com/group/sdruby

Reply via email to