Объединение двух моделей и группировка с помощью SUM в Django, но некоторые поля не отображаются

У меня есть две модели ProductDetails и InventorySummary. Я хочу объединить эти две модели и хочу сгруппировать по названию товара и количеству товара SUM. Количество должно быть умножено на цену продукта. Мои модели приведены ниже:

class ProductDetails(models.Model):
   id = models.AutoField(primary_key=True)
   product_name = models.CharField(max_length=100, unique=True)
   purchase_price = models.DecimalField(max_digits=7, decimal_places=2)
   dealer_price = models.DecimalField(max_digits=7, decimal_places=2)
   retail_price = models.DecimalField(max_digits=7, decimal_places=2)
   remarks = models.CharField(max_length=255, blank=True)

   def __str__(self):
       return self.product_name

class InventorySummary(models.Model):
    id = models.AutoField(primary_key=True)
    date = models.DateField(default=date.today)
    product_name = models.ForeignKey(ProductDetails, on_delete=models.CASCADE)
    quantity = models.IntegerField()

    def __str__(self):
        return str(self.product_name)

Мои взгляды приведены ниже, которые работают хорошо:

def stockPrice(request):
stock = (
InventorySummary.objects.annotate(total_amount=Sum(F("product_name__purchase_price") * 
F("quantity"))))
return render(request, 'inventory_price.html', {'stock': stock})

Но когда я группирую, то не работает. Работает только общая_сумма. Название_продукта, закупочная_цена и количество не отображаются

 def stockPrice(request):
     stock = (
     InventorySummary.objects.values("product_name__product_name")
     .order_by("product_name__product_name")
     .annotate(total_amount=Sum(F("product_name__purchase_price") * F("quantity"))))
     return render(request, 'inventory_price.html', {'stock': stock})
Вернуться на верх