Как изменить объект при создании другого объекта в django?
Я пишу приложение для финансового учета. Я использую drf. Я не могу понять, как изменить счет при создании объекта "расход"
Модели
count = models.DecimalField(max_digits=7, decimal_places=2, verbose_name='Расход')
date = models.DateField(blank=True, verbose_name='Дата', null=True)
account = models.ForeignKey(Cash, on_delete=models.CASCADE, verbose_name='Счёт', default=DEFAULT_CHECK_ID)
category = models.ForeignKey(Categories,
on_delete=models.SET_NULL,
null=True, blank=True,
verbose_name='Категория')
place = models.ForeignKey(Places,
on_delete=models.SET_NULL,
null=True, blank=True,
verbose_name='Место платежа')
comment = models.CharField(max_length=150, blank=True, verbose_name='Комментарий')
is_income = models.BooleanField(verbose_name='Доход')
Сериализатор
class CountSerializer(serializers.ModelSerializer):
category = serializers.CharField()
place = serializers.CharField()
account = serializers.CharField()
Виды
class CountViewSet(ModelViewSet):
queryset = Count.objects.all()
serializer_class = CountSerializer
filter_backends = [DjangoFilterBackend, SearchFilter]
permission_classes = [IsAuthenticated]
filter_fields = ['category', 'place']
search_fields = ['count']
def create(self, request):
count = self
for i in count:
if i.is_income:
account_id = i.account.id
result = i.account.balance + i.count
return Cash.objects.filter(id=account_id).update(balance=result)