django EAV过滤

时间:2012-12-10 02:32:45

标签: django entity-attribute-value

我有以下型号。

class Category(MPTTModel):
    name = models.CharField(max_length=100, null=False, blank=False)
    parent = TreeForeignKey('self', null=True, blank=True, related_name='children')

    def __unicode__(self):
        return self.name

class Product(models.Model):
    name = models.CharField(max_length=250, null=False, blank=False)
    category = models.ForeignKey('Category')
    price = models.DecimalField(decimal_places=2, max_digits=7)

    def __unicode__(self):
        return self.name

class ProductAttribute(models.Model):
    products = models.ManyToManyField('Product')
    category = models.ForeignKey('Category')
    property = models.CharField(max_length=250, null=False, blank=False)
    value = models.CharField(max_length=250, null=False, blank=False)

我需要能够根据给定的类别和给定的属性选择产品。

例如,如果我有产品“Blender”,我想选择给定类别中的所有混合器,具有给定属性(例如brand = black& decker)。

0 个答案:

没有答案