Oct
16
16
It may be not so obvious at first that when you override save() in models to change something in a related object (ie via ForeignKey) you have to explicitly call save() on that related object.
Python
-
class FirstObject(models.Model):
-
related_object = models.ForeignKey("SecondObject")
-
def save(self):
-
self.related_object.counter = self.related_object + 1
-
self.related_object.save()
-
super(FirstObject, self).save()
-
-
class SecondObject(models.Model):
-
counter = models.IntegerField(default=0)


Leave a Reply