how do i fetch a session by ID?

This must seem like a silly question to those of you in the know, but digging around http://api.rubyonrails.com/ doesnt get my anywhere.

How do I retrieve a session based on it's ID? I'd expect something like

  my_session = ActiveController::Sessions.find_by_id(session_id)

But I can't find anything even remotely similar to that in the API...

  Thanks,     Tyler

Hi Tyler,

Tyler MacDonald wrote,

This must seem like a silly question to those of you in the know, but digging around http://api.rubyonrails.com/ doesnt get my anywhere.

How do I retrieve a session based on it's ID? I'd expect something like

my_session = ActiveController::Sessions.find_by_id(session_id)

But I can't find anything even remotely similar to that in the API...

That's because, for the most part, you won't ever need to do that. The Rails architecture protects you from having to figure out that crap. If you need to, for example, delete the current session, you just do session.destroy. If you need to access a session variable for the current session, you just do session[:variable_of_interest]. As you learn more about Rails, you'll understand why that's true. If you have some reason for doing more than that kind of stuff, you'll need to say more about what it is you're trying to do. Most often, though, folks new to Rails find things like this are just much easier than they're used to.

hth. Bill

Tyler,

Are you looking to do something like this?

session.session_id

That will retrieve the unique session_id that’s generated. I’m assuming you’re using: config.action_controller.session_store = :active_record_store

-Dave

I have three uses for grabbing a session by ID right now, and I'm betting as I go along there will be more. :slight_smile:

1) AJAX instant messanging. When two people initiate an IM conversation, I would like the messages to be delivered by session ID.

2) PayPal. I would like the session that initiated a purchase to be indicated in the PayPal IPN. I can do that without actually looking up the session, but it would be nice to do something with the session (eg; set a flag) when the IPN comes in. Yes, I could set a flag on the "user", but what if somebody is making a purchase without creating an account?

3) Applets. These can't/don't always pass the browser's cookies along. It'd be nice to point applets at a url with the session id embedded, and then work with that to figure out what user/session is using the applet.

So all I really need, is some way to get from a Session ID to a session object.

Thanks,   Tyler

I will be, but I would still like a way to get from session ID to session object without depending on active_record_store... that way I can turn this stuff into plugins, without them depending on a model.

  Thanks,     Tyler