django-session-activity icon indicating copy to clipboard operation
django-session-activity copied to clipboard

user is None when logout is performed when already logged out

Open dominicglenn opened this issue 11 years ago • 0 comments

When a user is logged out, if they try to log out again then an AttributeError is raised in the following code:

def destroy_session_activity(user, request, **kwargs):
    """
    Destroy session activity record.

    Should be called when user logs out or when a session is deactivated.
    """
    session_key = request.session.session_key
    if user.is_authenticated():
        SessionActivity.objects.filter(user=user, session_key=session_key)

The user is set to None in line 101 of django/contrib/auth/__init__.py:

    user = getattr(request, 'user', None)
    if hasattr(user, 'is_authenticated') and not user.is_authenticated():
        user = None
    user_logged_out.send(sender=user.__class__, request=request, user=user)

dominicglenn avatar Jun 20 '14 08:06 dominicglenn