创建库存模型的最佳方法是什么?

时间:2016-04-22 04:01:10

标签: python django django-models

我是django的新手。我正在制作简单的库存应用程序。这是我的模特:

class Received(models.Model):
    item = models.ForeignKey(Item)
    weight = models.DecimalField(max_digits=8, decimal_places=2)
    ....

class Sold(models.Model):
    item = models.ForeignKey(Item)
    weight = models.DecimalField(max_digits=8, decimal_places=2)
    ....

class Inventory(models.Model):
    item = models.OneToOne(Item)
    weight_received = ?
    weight_sold = ?
    timestamp = models.DateTimeField()
    ....

class InventoryHistory(models.Model):
    # I have no idea
    item = models.ForeignKey(Item)
    date = models.DateField(auto_now=True)
    total_weight = models.DecimalField(max_digits=8, decimal_places=2)

我想做的是:

1。)我在ReceivedSold上输入数据Inventory应该自动更新(其中Inventory.weight_in是{的} {1}}和Received.weightInventory.weight_out的和。)

2.)我对它们进行了删除,Sold.weight自动更新

3。)我会对它们进行编辑,Inventory自动更新

有可能,怎么样?

这是另一个关于我缺乏数据库知识问题的问题。我是否有必要制作一个Inventory我可以在哪里跟踪每日的库存历史记录?

谢谢...

1 个答案:

答案 0 :(得分:0)

您可以使用signals。特别是django.db.models.signals.post_savedjango.db.models.signals.post_delete。对于跟踪历史记录,我建议使用django-reversion