In some Django views, I used a pattern like this to save changes to a model, and then to do some asynchronous updating (such as generating images, further altering the model) ba
There are some race conditions in Celery tasks. I think here is an explanation of your problem.
Take a look into those docs. Also there are some packages like django-celery-transactions that can help you with your question.