34👍
✅
This is probably caused by your update being performed inside a transaction. The transaction is committed after the Celery Task has already started which causes the Celery Task to see your old value when running.
You can try the following change:
from django.db import transaction
@receiver(post_save, sender=MyModel)
def my_model_post_save(sender, instance, **kwargs):
transaction.on_commit(lambda: handle_save_task.apply_async(args=(instance.pk,)))
Source:stackexchange.com