middlewares.py 793 B

1234567891011121314151617181920212223
  1. from scanapp.models import User, UserActivity
  2. class ActivityMiddleware:
  3. # This middleware run on all scanapp endpoint and record acivities on UserActivity Table
  4. def __init__(self, get_response):
  5. self.get_response = get_response
  6. def __call__(self, request):
  7. response = self.get_response(request)
  8. print(request.path)
  9. if request.path.split('/')[0] == 'admin':
  10. return response
  11. if not 'scanapp' in request.path:
  12. return response
  13. try:
  14. activity = UserActivity()
  15. user = User.getUser(request.user)
  16. activity.user = user
  17. activity.activity = request.path
  18. activity.save()
  19. return response
  20. except Exception as e:
  21. return response