On Mon, Nov 12, 2012 at 2:08 AM, Anil Jangity <[email protected]> wrote: > I am trying to build a User model with a dedicated LDAP backend. I have no > SQL database. > > def login(request): > ... > login(request, user) > request.user.is_authenticated() ---> return True > return HttpResponseRedirect("/manage") > > def manage(request): > print request.user.is_authenticated() --> returns False > > Shouldn't the manage() show the user being authenticated? > What exactly happens when I do a login() call? Does it store some sessions > somewhere? If so, what can I do in my custom User model to make it save > this session? >
Django logins are handled by a session, and sessions are saved by the Session middleware when the response is passed back to the client. Django's builtin login call returns a response that sets the new session for the logged in user; however, you're throwing away that information and returning your own response, so the session isn't being saved. If you want to persist the session, you'll need to pull the relevant session keys over from the response returned by the login call, and attach them to the redirect response (or find some other sequence of events that will let you get to the manage view). Yours, Russ Magee %-) -- You received this message because you are subscribed to the Google Groups "Django users" 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 this group at http://groups.google.com/group/django-users?hl=en.

