AC-984 Prevent signal handlers from being run unnecessarily when deleting inventory, remove unnecessary extra queries, use update_fields when possible.

This commit is contained in:
Chris Church
2014-01-27 18:37:51 -05:00
parent 188d7b41bb
commit 27fb54b2a7
7 changed files with 153 additions and 85 deletions

View File

@@ -51,3 +51,14 @@ class ActivityStream(models.Model):
def get_absolute_url(self):
return reverse('api:activity_stream_detail', args=(self.pk,))
def save(self, *args, **kwargs):
# For compatibility with Django 1.4.x, attempt to handle any calls to
# save that pass update_fields.
try:
super(ActivityStream, self).save(*args, **kwargs)
except TypeError:
if 'update_fields' not in kwargs:
raise
kwargs.pop('update_fields')
super(ActivityStream, self).save(*args, **kwargs)