middleware.py 503 B

123456789101112131415
  1. from django.http import HttpResponseRedirect
  2. from django.conf import settings
  3. LOGIN_REQUIRED = getattr(settings, 'LOGIN_REQUIRED', False)
  4. class LoginRequiredMiddleware:
  5. """
  6. If LOGIN_REQUIRED is True, redirect all non-authenticated users to the login page.
  7. """
  8. def process_request(self, request):
  9. if LOGIN_REQUIRED and not request.user.is_authenticated():
  10. if request.path_info != settings.LOGIN_URL:
  11. return HttpResponseRedirect(settings.LOGIN_URL)