Я создал дополнительное поле для пользователя (userattributes extends user):
class UserAttributes(User):
last_session_key = models.CharField(blank=True, null=True, max_length=40)
и метод:
def set_session_key(self, key):
if self.last_session_key and not self.last_session_key == key:
Session.objects.get(session_key=self.last_session_key).delete()
self.last_session_key = key
self.save()
, и я вызвал его сразу после входа в систему:
auth.login(request, user)
user.userattributes.set_session_key(request.session.session_key)