fix: Add changed fields to update_fields in Model.save() methods

This commit is contained in:
Jennifer Richards 2023-05-18 13:15:58 -03:00
parent 171a5bec73
commit 65ea426793
No known key found for this signature in database
GPG key ID: 9B2BF5C5ADDA6A6E
2 changed files with 5 additions and 2 deletions

View file

@ -187,9 +187,11 @@ class NomineePosition(models.Model):
ordering = ['nominee'] ordering = ['nominee']
def save(self, **kwargs): def save(self, **kwargs):
update_fields = kwargs.pop("update_fields", None)
if not self.pk and not self.state_id: if not self.pk and not self.state_id:
self.state = NomineePositionStateName.objects.get(slug='pending') self.state = NomineePositionStateName.objects.get(slug='pending')
super(NomineePosition, self).save(**kwargs) update_fields = {"slug"}.union(update_fields or set())
super().save(update_fields=update_fields, **kwargs)
def __str__(self): def __str__(self):
return "%s - %s - %s" % (self.nominee, self.state, self.position) return "%s - %s - %s" % (self.nominee, self.state, self.position)

View file

@ -24,7 +24,8 @@ class AffiliationAlias(models.Model):
def save(self, *args, **kwargs): def save(self, *args, **kwargs):
self.alias = self.alias.lower() self.alias = self.alias.lower()
super(AffiliationAlias, self).save(*args, **kwargs) update_fields = {"alias"}.union(kwargs.pop("update_fields", set()))
super(AffiliationAlias, self).save(update_fields=update_fields, *args, **kwargs)
class Meta: class Meta:
verbose_name_plural = "affiliation aliases" verbose_name_plural = "affiliation aliases"