【发布时间】:2018-01-30 16:52:51
【问题描述】:
我的产品型号如下:
class Product(models.Model):
name = models.CharField(max_length=255)
handle = models.CharField(max_length=55)
summary = models.CharField(max_length=255, blank=True)
category = models.ForeignKey(Category)
以上只是产品详情,但有 3 种定价类型:
- 标准 - 通过填写价格字段进行正常正常定价
- 变体 - 根据产品变体(尺寸、颜色等)及其各自的价格定价
- 组合 - 这是其他已保存产品的组合,由用户提供自定义价格。
对于 1 和 2,我有以下型号。如果产品型号在 StandardProduct 型号上的价格超过 1,那么我知道它有变体。
class StandardProduct(models.Model):
variant_type = models.CharField(max_length=55)
variant_name = models.CharField(max_lenght=55)
product = models.ForeignKey(Product)
sku = models.CharField(max_length=55, blank=True, null=True)
barcode = models.CharField(max_length=55, blank=True, null=True)
selling_price = models.DecimalField(max_length=15, decimal_places=2)
如何创建组合产品模型? 组合产品模型内部可以包含不同的创建产品(及其数量)。价格由用户指定。以下是我所拥有的,但我不知道如何处理。
class CombinedProduct(models.Model):
product = models.ForeignKey(Product)
item = models.ForeignKey(StandardProduct)
quantity = models.DecimalField(max_length=15, decimal_places=2)
【问题讨论】:
标签: django postgresql django-models