Python 3.x 对于相似的对象,最好有几个不同的表,还是一个大表?
我的桌子存在优化问题: 我有Python 3.x 对于相似的对象,最好有几个不同的表,还是一个大表?,python-3.x,django,django-models,orm,Python 3.x,Django,Django Models,Orm,我的桌子存在优化问题: 我有项目,它们可以有一个价格乘以一、乘以十和乘以一百 现在我有三张桌子: class Prix_x1(models.Model): def __str__(self): return self.item.name prix = models.IntegerField(null=True) saved_at = models.DateTimeField() item = models.ForeignKey(Item, on_
项目
,它们可以有一个价格
乘以一、乘以十和乘以一百
现在我有三张桌子:
class Prix_x1(models.Model):
def __str__(self):
return self.item.name
prix = models.IntegerField(null=True)
saved_at = models.DateTimeField()
item = models.ForeignKey(Item, on_delete=models.CASCADE)
class Prix_x10(models.Model):
def __str__(self):
return self.item.name
prix = models.IntegerField(null=True)
saved_at = models.DateTimeField()
item = models.ForeignKey(Item, on_delete=models.CASCADE)
class Prix_x100(models.Model):
def __str__(self):
return self.item.name
prix = models.IntegerField(null=True)
saved_at = models.DateTimeField()
item = models.ForeignKey(Item, on_delete=models.CASCADE)
但我经常需要检查这些价格中哪一个是每单位最低的。因此,每次我需要检查每种商品的价格表。所以我的问题是:这是一个更好的优化方法吗 例如,有一个大表
Price
和一个字段number\u of_unit
可以取1、10或100作为值是否更好
谢谢你的帮助 我想最好有一张桌子
class Prix(models.Model):
def __str__(self):
return self.item.name
prix = models.IntegerField(null=True)
prix_x = models.IntegerField(null=True)
saved_at = models.DateTimeField()
item = models.ForeignKey(Item, on_delete=models.CASCADE)
保存并增加prix和prix_x我认为最好有一个表
class Prix(models.Model):
def __str__(self):
return self.item.name
prix = models.IntegerField(null=True)
prix_x = models.IntegerField(null=True)
saved_at = models.DateTimeField()
item = models.ForeignKey(Item, on_delete=models.CASCADE)
保存并增加prix和prix_x您只需在模型中为每个价格设置一个现货:
class Prix(models.Model):
def __str__(self):
return self.item.name
prix_x1 = models.IntegerField(null=True)
prix_x10 = models.IntegerField(null=True)
prix_x100 = models.IntegerField(null=True)
saved_at = models.DateTimeField()
item = models.ForeignKey(Item, on_delete=models.CASCADE)
您只需为模型中的每个价格提供一个现货:
class Prix(models.Model):
def __str__(self):
return self.item.name
prix_x1 = models.IntegerField(null=True)
prix_x10 = models.IntegerField(null=True)
prix_x100 = models.IntegerField(null=True)
saved_at = models.DateTimeField()
item = models.ForeignKey(Item, on_delete=models.CASCADE)
为什么我没想到这个,这么简单啊哈!谢谢为什么我没想到这个,这么简单啊哈!谢谢