Get created_by and modified_by updating automatically.

This commit is contained in:
Chris Church
2014-04-01 21:27:32 -04:00
parent d632aa0af9
commit 118ddf97f6
12 changed files with 172 additions and 6 deletions

View File

@@ -12,6 +12,10 @@ from django.conf import settings
from django.db.models.signals import pre_save, post_save, pre_delete, post_delete, m2m_changed
from django.dispatch import receiver
# Django-CRUM
from crum import get_current_request
from crum.signals import current_user_getter
# AWX
from awx.main.models import *
from awx.api.serializers import *
@@ -361,3 +365,15 @@ def activity_stream_associate(sender, instance, **kwargs):
activity_entry.save()
getattr(activity_entry, object1).add(obj1)
getattr(activity_entry, object2).add(obj2_actual)
@receiver(current_user_getter)
def get_current_user_from_drf_request(sender, **kwargs):
'''
Provider a signal handler to return the current user from the current
request when using Django REST Framework. Requires that the APIView set
drf_request on the underlying Django Request object.
'''
request = get_current_request()
drf_request = getattr(request, 'drf_request', None)
return (getattr(drf_request, 'user', False), 0)