django-request is a statistics module for django. It stores requests in a database for admins to see, it can also be used to get statistics on who is online etc.
As well as a site statistics module, with the active_users
template tag and
manager method you can also use django-request to show who is online in a
certain time:
Request.objects.active_users(minutes=15)
To find the request overview page, please click on Requests inside the admin, then “Overview” on the top right, next to “add request”.
- Python: 3.8, 3.9, 3.10, 3.11, 3.12
- Django: 4.2, 5.0, 5.1
- python-dateutil
django-request 1.5.1 is the last version that supports Django 1.4, 1.5, 1.6.
django-request 1.5.4 is the last version that supports Django 1.7, 1.8, 1.9.
django-request 1.5.5 is the last version that supports Django 1.10.
django-request 1.5.6 is the last version that supports Django 1.11, 2.0, 2.1, 3.0, 3.1, and Python 2.7 and 3.4.
django-request 1.6.3 is the last version that supports Django 2.2, 3.2, 4.0, 4.1, and Python 3.6 and 3.7.
- Put
'request'
in yourINSTALLED_APPS
setting. - Run the command
manage.py migrate
. - Add
request.middleware.RequestMiddleware
toMIDDLEWARE
. If you usedjango.contrib.auth.middleware.AuthenticationMiddleware
, place theRequestMiddleware
after it. If you usedjango.contrib.flatpages.middleware.FlatpageFallbackMiddleware
placerequest.middleware.RequestMiddleware
before it else flatpages will be marked as error pages in the admin panel. - Add
REQUEST_BASE_URL
to your settings with the base URL of your site (e.g.https://www.my.site/
). This is used to calculate unique visitors and top referrers.REQUEST_BASE_URL
defaults to'http://%s' % Site.objects.get_current().domain
.
For a detailed documentation of django-request, or how to install django-request please see: django-request or the docs/ directory.