diff --git a/awx/main/middleware.py b/awx/main/middleware.py index b36ac9b53c..84df036e74 100644 --- a/awx/main/middleware.py +++ b/awx/main/middleware.py @@ -5,7 +5,7 @@ import logging import threading import uuid -from django.contrib.auth.models import User +from django.contrib.auth.models import User, AnonymousUser from django.db.models.signals import post_save from django.db import IntegrityError from django.http import HttpResponseRedirect @@ -62,7 +62,12 @@ class ActivityStreamMiddleware(threading.local): def set_actor(self, user, sender, instance, **kwargs): if sender == ActivityStream: if isinstance(user, User) and instance.actor is None: - instance.actor = user + user = User.objects.filter(id=user.id) + if user.exists(): + user = user[0] + instance.actor = user + else: + instance.actor = AnonymouseUser instance.save(update_fields=['actor']) else: if instance.id not in self.instance_ids: