class documentation

Base class for all Session classes.

Class Method clear_expired Remove expired sessions from the session store.
Method __contains__ Undocumented
Method __delitem__ Undocumented
Method __getitem__ Undocumented
Method __init__ Undocumented
Method __setitem__ Undocumented
Method clear Undocumented
Method create Create a new session instance. Guaranteed to create a new object with a unique key and will have saved the result once (with empty data) before the method returns.
Method cycle_key Create a new session key, while retaining the current session data.
Method decode Undocumented
Method delete Delete the session data under this key. If the key is None, use the current session key value.
Method delete_test_cookie Undocumented
Method encode Return the given session dictionary serialized and encoded as a string.
Method exists Return True if the given session_key already exists.
Method flush Remove the current session data from the database and regenerate the key.
Method get Undocumented
Method get_expire_at_browser_close Return ``True`` if the session is set to expire when the browser closes, and ``False`` if there's an expiry date. Use ``get_expiry_date()`` or ``get_expiry_age()`` to find the actual expiry date/age, if there is one.
Method get_expiry_age Get the number of seconds until the session expires.
Method get_expiry_date Get session the expiry date (as a datetime object).
Method get_session_cookie_age Undocumented
Method has_key Undocumented
Method is_empty Return True when there is no session_key and the session is empty.
Method items Undocumented
Method keys Undocumented
Method load Load the session data and return a dictionary.
Method pop Undocumented
Method save Save the session data. If 'must_create' is True, create a new session object (or raise CreateError). Otherwise, only update an existing object and don't create one (raise UpdateError if needed).
Method set_expiry Set a custom expiration for the session. ``value`` can be an integer, a Python ``datetime`` or ``timedelta`` object or ``None``.
Method set_test_cookie Undocumented
Method setdefault Undocumented
Method test_cookie_worked Undocumented
Method update Undocumented
Method values Undocumented
Constant TEST_COOKIE_NAME Undocumented
Constant TEST_COOKIE_VALUE Undocumented
Class Variable session_key Undocumented
Instance Variable accessed Undocumented
Instance Variable modified Undocumented
Instance Variable serializer Undocumented
Property key_salt Undocumented
Method _get_new_session_key Return session key that isn't being used.
Method _get_or_create_session_key Undocumented
Method _get_session Lazily load session from storage (unless "no_load" is True, when only an empty dict is stored) and store it in the current instance.
Method _get_session_key Undocumented
Method _set_session_key Validate session key on assignment. Invalid values will set to None.
Method _validate_session_key Key must be truthy and at least 8 characters long. 8 characters is an arbitrary lower bound for some minimal key security.
Class Variable __not_given Undocumented
Class Variable _session Undocumented
Instance Variable __session_key Undocumented
Instance Variable _session_cache Undocumented
Instance Variable _session_key Undocumented
@classmethod
def clear_expired(cls): (source)

Remove expired sessions from the session store. If this operation isn't possible on a given backend, it should raise NotImplementedError. If it isn't necessary, because the backend has a built-in expiration mechanism, it should be a no-op.

def __contains__(self, key): (source)

Undocumented

def __delitem__(self, key): (source)

Undocumented

def __getitem__(self, key): (source)

Undocumented

def __setitem__(self, key, value): (source)

Undocumented

def clear(self): (source)

Undocumented

def create(self): (source)

Create a new session instance. Guaranteed to create a new object with a unique key and will have saved the result once (with empty data) before the method returns.

def cycle_key(self): (source)

Create a new session key, while retaining the current session data.

def decode(self, session_data): (source)

Undocumented

def delete_test_cookie(self): (source)

Undocumented

def encode(self, session_dict): (source)

Return the given session dictionary serialized and encoded as a string.

def flush(self): (source)

Remove the current session data from the database and regenerate the key.

def get(self, key, default=None): (source)

Undocumented

def get_expire_at_browser_close(self): (source)

Return ``True`` if the session is set to expire when the browser closes, and ``False`` if there's an expiry date. Use ``get_expiry_date()`` or ``get_expiry_age()`` to find the actual expiry date/age, if there is one.

def get_expiry_age(self, **kwargs): (source)

Get the number of seconds until the session expires. Optionally, this function accepts `modification` and `expiry` keyword arguments specifying the modification and expiry of the session.

def get_expiry_date(self, **kwargs): (source)

Get session the expiry date (as a datetime object). Optionally, this function accepts `modification` and `expiry` keyword arguments specifying the modification and expiry of the session.

def get_session_cookie_age(self): (source)

Undocumented

def has_key(self, key): (source)

Undocumented

def is_empty(self): (source)

Return True when there is no session_key and the session is empty.

def items(self): (source)

Undocumented

def keys(self): (source)

Undocumented

def pop(self, key, default=__not_given): (source)

Undocumented

def save(self, must_create=False): (source)

Save the session data. If 'must_create' is True, create a new session object (or raise CreateError). Otherwise, only update an existing object and don't create one (raise UpdateError if needed).

def set_expiry(self, value): (source)

Set a custom expiration for the session. ``value`` can be an integer, a Python ``datetime`` or ``timedelta`` object or ``None``. If ``value`` is an integer, the session will expire after that many seconds of inactivity. If set to ``0`` then the session will expire on browser close. If ``value`` is a ``datetime`` or ``timedelta`` object, the session will expire at that specific future time. If ``value`` is ``None``, the session uses the global session expiry policy.

def set_test_cookie(self): (source)

Undocumented

def setdefault(self, key, value): (source)

Undocumented

def test_cookie_worked(self): (source)

Undocumented

def update(self, dict_): (source)

Undocumented

def values(self): (source)

Undocumented

TEST_COOKIE_NAME: str = (source)

Undocumented

Value
'testcookie'
TEST_COOKIE_VALUE: str = (source)

Undocumented

Value
'worked'
session_key = (source)

Undocumented

accessed: bool = (source)

Undocumented

serializer = (source)

Undocumented

Undocumented

def _get_new_session_key(self): (source)

Return session key that isn't being used.

def _get_or_create_session_key(self): (source)

Undocumented

def _get_session(self, no_load=False): (source)

Lazily load session from storage (unless "no_load" is True, when only an empty dict is stored) and store it in the current instance.

def _get_session_key(self): (source)
def _set_session_key(self, value): (source)

Validate session key on assignment. Invalid values will set to None.

def _validate_session_key(self, key): (source)

Key must be truthy and at least 8 characters long. 8 characters is an arbitrary lower bound for some minimal key security.

__not_given = (source)

Undocumented

_session = (source)

Undocumented

__session_key = (source)

Undocumented