Hi, I've been looking for some time around the internet a problem I have,
maybe I'm just dull from all the searching and the answer is pretty
obvious, but I can't find it.
For example, I have code like this:
@app.task
def foo(idx):
print("This is iteration {}".format(idx))
def save_model(self, request, obj, form, change):
data = request.POST
result = super(Model, self).save_model(request, obj, form, change)
for pk in data['_models_changed']:
transaction.on_commit(lambda: foo(pk))
To my astonishment, I thought I would get:
"This is iteration 1"
"This is iteration 2"
"This is iteration 3"
"This is iteration 4"
But I got:
"This is iteration 4"
"This is iteration 4"
"This is iteration 4"
"This is iteration 4"
I'm using python 2.7, Django 1.10.5 and Celery 4.0.2.
'models_changed' is a field in the post added by a custom clean method.
Anyone knows a way to do this?
Thanks for all!
--
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-users/91e87fb4-69e2-4b4e-bd6b-704eb7567026%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.