From: test test Date: Wed, 26 May 2021 13:42:29 +0000 (+0200) Subject: Migrate to django 3.2 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=e7da3592f7e5ced06eb9df5e698f3076f6be12aa;p=django-unique-session.git Migrate to django 3.2 --- diff --git a/unique_session/backends/session_backend.py b/unique_session/backends/session_backend.py index 5fe2b00..350ee5d 100644 --- a/unique_session/backends/session_backend.py +++ b/unique_session/backends/session_backend.py @@ -1,10 +1,10 @@ -from django.contrib.sessions.backends.base import SessionBase, CreateError -from unique_session.models import Session +from django.contrib.sessions.backends.base import CreateError +from ..models import Session from django.contrib.sessions.backends.db import SessionStore as SessionStoreBase from django.core.exceptions import SuspiciousOperation, PermissionDenied from django.db import IntegrityError, transaction, router -from django.utils.encoding import force_unicode +from django.utils.encoding import force_text from django.utils import timezone from django.contrib.auth.signals import user_logged_in @@ -26,7 +26,7 @@ class SessionStore(SessionStoreBase): session_key = self.session_key, expire_date__gt=timezone.now() ) - val = self.decode(force_unicode(s.session_data)) + val = self.decode(force_text(s.session_data)) s.updated_date = timezone.now() s.save() return val @@ -85,7 +85,7 @@ class SessionStore(SessionStoreBase): to log in as long as there is a session updated that number of seconds ago """ - if not user.id in UNIQUE_SESSION_WHITELIST: + if not user.id in WHITELIST: limit = timezone.now() + TIME_DELTA s = Session.objects.filter(user_id = user.id, updated_date__lt = limit) diff --git a/unique_session/models.py b/unique_session/models.py index b95cc11..66e09b8 100644 --- a/unique_session/models.py +++ b/unique_session/models.py @@ -2,10 +2,10 @@ from django.db import models from django.utils.translation import ugettext_lazy as _ from django.contrib.auth.models import User -from django.contrib.sessions.models import SessionManager, Session as BaseSession +from django.contrib.sessions.models import Session as BaseSession class Session(BaseSession): - user = models.ForeignKey(User, related_name='session', + user = models.OneToOneField(User, related_name='session', unique=False, blank=True, null=True) updated_date = models.DateTimeField(_('updated date'), db_index=True,