I am creating anonymous guest users which are persistent during the
time they are connected to the site or until they sign up and become a
member user ...

this add a lot of anonymous user records in the DB and I wonder how to
purge them ? should I run a cron script regularly or is there another
way to do it ?

thanks for feedback


I have in my application_controller :


  # if user is logged in, return current_user, else return guest_user
  def current_or_guest_user
    if current_user
      if session[:guest_user_id]
        logging_in
        guest_user.destroy
        session[:guest_user_id] = nil
      end
      current_user
    else
      guest_user
    end
  end


  # find guest_user object associated with the current_session,
creating one if needed
  def guest_user
    User.find( session[:guest_user_id].nil? ? session[:guest_user_id]
= create_guest_user.id : session[:guest_user_id] )
  end

  def create_guest_user
    u = User.new(email: "guest_#{Time.now.to_i}#{rand(99)}
@example.com")
    u.confirmed_at = Time.now
    u.save(:validate => false, :confirm => false)
    u
  end

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to