Я использую Django 2.x
У меня есть модель TransactionLog , в которой записывается заданная и обновленная сумма.
Каждый раз, когда указывается сумма, в модели AmountGiven создается новая запись, в результате чего создается журнал с действием как с учетом , и, если ранее заданная сумма обновляется, он регистрируется с действием как обновлено .
@receiver(post_save, sender=AmountGiven)
def amount_given_post_save_receiver(sender, instance, created, **kwargs):
if created:
action = 'given'
else:
action = 'updated'
TransactionLog.objects.create(
user=instance.contact.user,
contact=instance.contact,
amount_given=instance,
amount=instance.amount,
action=action
)
Но даже при создании новой записи получатель post save
вызывается два или более раза. Затем одна запись сохраняется как action=given
в TransactionLog , а другие создают запись action=updated
в TransactionLog модели.
Как сделать его уникальным для каждого звонка?