The changes made in this repo, however, are very minimal, and the package itself is more like an adaptation for personal use.
-
Install the package using your favorite package manager, for example pip:
pip install django-user-sessions-ng
-
Add django_user_sessions_ng
to your INSTALLED_APPS setting like this::
INSTALLED_APPS = [
...,
"django_user_sessions_ng",
]
-
Add django_user_sessions_ng.middleware.SessionMiddleware
to your MIDDLEWARE setting like this:
MIDDLEWARE = [
...,
"django_user_sessions_ng.middleware.SessionMiddleware",
]
-
Set SESSION_ENGINE
to django_user_sessions_ng.backends.db
or django_user_sessions_ng.backends.cached_db
depending on your preferences and whether you need cached db in your Django settings file:
SESSION_ENGINE = "django_user_sessions_ng.backends.db"
or
SESSION_ENGINE = "django_user_sessions_ng.backends.cached_db"
-
Run python manage.py migrate
to create the necessary models.
-
(Optional) In order to enable the location information for each session, you will need to install the package called geoip2
and download the GeoLite2 database from MaxMind or using the built-in python manage.py download_geoip_db -k MAXMIND_LICENSE_KEY
command (you can get the MAXMIND_LICENSE_KEY
by registering at their website and registering a new license key) and set the GEOIP_PATH
setting in your Django settings file to the path of the database file or directory containing multiple databases.
For example:
GEOIP_PATH = "/path/to/GeoLite2"
or
GEOIP_PATH = "/path/to/GeoLite2/GeoLite2-City.mmdb"