Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何获得2个django表的每个数量的差异?_Python_Django_Django Models - Fatal编程技术网

Python 如何获得2个django表的每个数量的差异?

Python 如何获得2个django表的每个数量的差异?,python,django,django-models,Python,Django,Django Models,我这里有两种不同的Django型号 class Stocks(models.Model): name = models.CharField(max_length=100) qty = models.FloatField() class Sold(models.Model): name = models.CharField(max_length=100) qty = models.FloatField() 如何获得每个数量的差异?例如:Stocks.qty-

我这里有两种不同的Django型号

class Stocks(models.Model):
    name = models.CharField(max_length=100)
    qty = models.FloatField()

class Sold(models.Model):
    name = models.CharField(max_length=100)
    qty = models.FloatField()


如何获得每个数量的差异?例如:
Stocks.qty-sell.qty


如何做到这一点?

您应该重新考虑重新设计您的数据库,以便使这样的查询更容易

例如,最简单(但不是功能最完整)的解决方案:

class Item(models.Model):

    name = models.CharField(max_length=100)
    quantity = models.PositiveIntegerField()
每当发生库存移动事件时,只需在数量字段中添加或删除:

item = Item.objects.get(name="Chair")
item.update(quantity=item.quantity - 1)
item.save()
这样就很容易得到物品的数量

item = Item.objects.get(name="Chair")
print(item.quantity)
Django/数据库的一些特性使这样的东西变得更好,但由于您似乎是初学者,我建议您暂时采用这种方法,直到找到自己的立足点