查询django最畅销的产品
我有两个这样的模型查询django最畅销的产品,django,django-models,django-views,Django,Django Models,Django Views,我有两个这样的模型 class Product(models.Model): title = models.CharField(max_length=100) class Order_item(models.Model): product = models.ForeignKey(Product, on_delete=models.SET_NULL, null=True) quantity = models.PositiveSmallIntegerField(
class Product(models.Model):
title = models.CharField(max_length=100)
class Order_item(models.Model):
product = models.ForeignKey(Product, on_delete=models.SET_NULL, null=True)
quantity = models.PositiveSmallIntegerField(default=0)
order = models.ForeignKey(Order, on_delete=models.CASCADE)
date_added = models.DateTimeField(auto_now_add=True)
现在我想从Order_item中查询“日期x和y之间最畅销的十大产品”。我该怎么办?这是一个非常适合我的解决方案
Product.objects.filter(order_item__date_added__lte=datetime.datetime.today(), order_item__date_added__gt=datetime.datetime.today()-datetime.timedelta(days=7)).annotate(quantity_sum=Sum('order_item__quantity')).order_by('-quantity_sum')[:8]