'ValuesListQuerySet' 对象没有属性 'group_by'
'ValuesListQuerySet' object has no attribute 'group_by'
我正在尝试根据商店显示商店产品的尺寸和颜色:
store1: sizes=S,M,L colors=Red,blue
store2: sizes=L,Xl colors=yellow,green
我尝试将 values_list
与 group_by
一起使用,但它抛出了错误
'ValuesListQuerySet' object has no attribute 'group_by'
似乎 group_by
不是 django 的一部分。我该如何对上述查询进行分组?
models.py
一家商店包含一种可能具有不同尺寸和颜色的产品。同样,一种产品可以在多个商店出售。
class StoreProduct(models.Model):
product = models.ForeignKey('products.Product')
category = models.ForeignKey('products.Category')
store = models.ForeignKey('Store')
price = models.IntegerField(null=True , blank=True)
quantity = models.IntegerField(null=True , blank=True)
sizes = models.CharField(max_length=50 , null=True , blank=True)
colors = models.CharField(max_length=50 , null=True , blank=True)
def __unicode__(self):
return self.product.title
class Store(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL , null=True , blank=True)
StoreName = models.CharField(max_length=50 , default = '')
items = models.ManyToManyField('products.Product', through=StoreProduct)
brand = models.ForeignKey('products.Brand' , null=True , blank=True)
City = models.CharField(max_length=50 , default = '')
Area = models.CharField(max_length=50 , default = '')
Address = models.TextField(max_length=500)
MallName = models.CharField(max_length=50 , null=True , blank=True)
slug = models.SlugField(blank=True ,unique=True)
views.py
StoreProduct.objects.filter(product=productobj) \
.values_list('sizes', flat=True) \
.group_by('store')
您的 StoreProduct
代表特定商店中的 Product
,因此要获得“显示哪个商店有特定产品的尺寸和颜色”您应该改为查询 Product
。类似于:
p1=products.Product() #object representing your particular product
p1.storeproducts_set.all().value_list('store','sizes','colors')
在评估时应该 return 包含产品 p1
.[=15= 的“哪个商店有哪些尺寸和颜色”的元组列表]
我正在尝试根据商店显示商店产品的尺寸和颜色:
store1: sizes=S,M,L colors=Red,blue
store2: sizes=L,Xl colors=yellow,green
我尝试将 values_list
与 group_by
一起使用,但它抛出了错误
'ValuesListQuerySet' object has no attribute 'group_by'
似乎 group_by
不是 django 的一部分。我该如何对上述查询进行分组?
models.py
一家商店包含一种可能具有不同尺寸和颜色的产品。同样,一种产品可以在多个商店出售。
class StoreProduct(models.Model):
product = models.ForeignKey('products.Product')
category = models.ForeignKey('products.Category')
store = models.ForeignKey('Store')
price = models.IntegerField(null=True , blank=True)
quantity = models.IntegerField(null=True , blank=True)
sizes = models.CharField(max_length=50 , null=True , blank=True)
colors = models.CharField(max_length=50 , null=True , blank=True)
def __unicode__(self):
return self.product.title
class Store(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL , null=True , blank=True)
StoreName = models.CharField(max_length=50 , default = '')
items = models.ManyToManyField('products.Product', through=StoreProduct)
brand = models.ForeignKey('products.Brand' , null=True , blank=True)
City = models.CharField(max_length=50 , default = '')
Area = models.CharField(max_length=50 , default = '')
Address = models.TextField(max_length=500)
MallName = models.CharField(max_length=50 , null=True , blank=True)
slug = models.SlugField(blank=True ,unique=True)
views.py
StoreProduct.objects.filter(product=productobj) \
.values_list('sizes', flat=True) \
.group_by('store')
您的 StoreProduct
代表特定商店中的 Product
,因此要获得“显示哪个商店有特定产品的尺寸和颜色”您应该改为查询 Product
。类似于:
p1=products.Product() #object representing your particular product
p1.storeproducts_set.all().value_list('store','sizes','colors')
在评估时应该 return 包含产品 p1
.[=15= 的“哪个商店有哪些尺寸和颜色”的元组列表]