diff --git a/django/contrib/sessions/backends/db.py b/django/contrib/sessions/backends/db.py index 3328cc8cb7..9a537905a7 100644 --- a/django/contrib/sessions/backends/db.py +++ b/django/contrib/sessions/backends/db.py @@ -1,11 +1,11 @@ import datetime from django.conf import settings -from django.contrib.sessions.models import Session from django.contrib.sessions.backends.base import SessionBase, CreateError from django.core.exceptions import SuspiciousOperation from django.db import IntegrityError, transaction, router from django.utils.encoding import force_unicode + class SessionStore(SessionBase): """ Implements database session store. @@ -76,3 +76,7 @@ class SessionStore(SessionBase): Session.objects.get(session_key=session_key).delete() except Session.DoesNotExist: pass + + +# At bottom to avoid circular import +from django.contrib.sessions.models import Session diff --git a/django/contrib/sessions/models.py b/django/contrib/sessions/models.py index f438707e40..1d82a9929b 100644 --- a/django/contrib/sessions/models.py +++ b/django/contrib/sessions/models.py @@ -4,6 +4,7 @@ import cPickle as pickle from django.db import models from django.utils.translation import ugettext_lazy as _ + class SessionManager(models.Manager): def encode(self, session_dict): """ @@ -51,4 +52,6 @@ class Session(models.Model): def get_decoded(self): return SessionStore().decode(self.session_data) + +# At bottom to avoid circular import from django.contrib.sessions.backends.db import SessionStore