什么是产品属性的好模型

时间:2011-12-25 22:10:55

标签: django django-models

我正在为网上商店制作购物车。我有一个像

这样的模型产品
#Product
from django.db import models

class Product(models.Model):
    title = models.CharField()
    attribute = models.ManyToManyField('Attribute')

如何使用数字或选项(“红色”,“绿色”......等)创建大小,颜色等属性模型?

1 个答案:

答案 0 :(得分:1)

您是否读过ManyToManyFieldhttps://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.ManyToManyField

您需要定义一个Attribute模型类来指向,然后通过字段管理器的“添加”方法添加关系。

class Attribute(models.Model):
    value = models.CharField(max_length=64)

class Product(models.Model):
    title = models.CharField()
    attribute = models.ManyToManyField('Attribute')

product = Product.objects.create(title='foobar')
red_attribute = Attribute.objects.create(value='Red')
product.attribute.add(red_attribute)