我有两个模型,大概是这样的:
models.py
class Parent(models.Model):
id = models.BigAutoField(primary_key=True)
quantity = models.DecimalField(max_digits=3, decimal_places=0, null=True)
class Child(models.Model):
parent = models.ForeignKey('Parent', related_name="parent_child", on_delete=models.CASCADE)
quantity = models.DecimalField(max_digits=3, decimal_places=0, null=True)
如果父数量与子数量之和不同,则将父数量更新为子数量之和。
我尝试获取一个父数量与子数量之和不同的对象:
parent = Parents.objects.annotate(sum_quantities=Sum('parent_child__quantity')).exclude(quantity=F('sum_quantities'))
可以!但是我更新这个有问题。有什么好办法吗?
1条答案
按热度按时间kpbwa7wx1#
我解决了。