Создание подмассива продуктов с уникальным именем пользователя (django)

Мне нужен массив заказов клиентов, где имя пользователя уникально, а количество заказа должно быть добавлено. Я получил результат, используя annotate, но мне нужен подмассив с названием товара и соответствующим количеством в качестве подмассива. Пожалуйста, проверьте результаты, которые я получил и требуемые результаты ниже. Заранее спасибо

views.py

orders = Order.objects.values('staff_id', 'staff__username', 'product__name').annotate(quantity=Sum('order_quantity')).order_by()

models.py

class Product(models.Model):
    name = models.CharField(max_length=100, choices=PRODUCTS, null = True)
    quantity = models.PositiveIntegerField(null = True)

class Order(models.Model):
    product = models.ForeignKey(Product, on_delete=models.CASCADE, null=True)
    staff = models.ForeignKey(User, on_delete=models.CASCADE, null=True)
    order_quantity = models.PositiveIntegerField(null=True)

Выход:

[
   {
      "staff_id":15,
      "staff__username":"John",
      "product__name":"samsung",
      "quantity":2
   },
   {
      "staff_id":15,
      "staff__username":"John",
      "product__name":"apple",
      "quantity":18
   },
   {
      "staff_id":16,
      "staff__username":"test",
      "product__name":"apple",
      "quantity":100
   }
]

Требуется выход

[
   {
      "staff_id":15,
      "staff__username":"John",
      "product": [
         {
            "product__name":"samsung",
            "quantity":2
         },
         {
            "product__name":"apple",
            "quantity":18
         }
      ]
      
   },
   {
      "staff_id":16,
      "staff__username":"test",
      "product": [
         {
            "product__name":"apple",
            "quantity":100
         }
        ]
      
   }
]
Вернуться на верх