Как в Django вывести кастомизированый QuerySet?
У менять есть модель
class MoneyOperation(models.Model):
money_type = models.ForeignKey(MoneyTypeOperation, on_delete=models.CASCADE, null=True)
sum = models.IntegerField(blank=True)
employee_id = models.ForeignKey(Employee, on_delete=models.CASCADE, related_name='money_get')
date = models.DateField(null=True)
description = models.CharField(max_length=255, blank=True)
При закрытии смены туда записывается на каждого работника по две суммы(одна оклад, вторая бонус к окладу) и имеет следующий вид
{
"id": 221,
"employee_id": "Тест1",
"sum": 2500,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
},
{
"id": 222,
"employee_id": "Тест1",
"sum": 1866,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
},
{
"id": 223,
"employee_id": "Тест2",
"sum": 2500,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
},
{
"id": 224,
"employee_id": "Тест2",
"sum": 1866,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
},
Как мне получить объединенный вариант на каждого работника? Например
"date": "2023-04-13",
"workers":[
{
"id": 221,
"employee_id": "Тест1",
"sum": 2500,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
},
{
"id": 222,
"employee_id": "Тест1",
"sum": 1866,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
}],
[{
"id": 223,
"employee_id": "Тест2",
"sum": 2500,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
},
{
"id": 224,
"employee_id": "Тест2",
"sum": 1866,
"date": "2023-04-13",
"description": "",
"money_type": "Смена"
}],
Так же есть сейчас такой вьюсет через который и планирую это кастомизировать
class MoneyOperationViewSet(viewsets.ModelViewSet):
def get_queryset(self):
queryset = MoneyOperation.objects.all()
date = self.request.query_params.get('date')
if date:
queryset = queryset.filter(date=date)
for el in queryset:
print(el.id)
return queryset
serializer_class = MoneyOperationsSerializer