Hi Bernd,

You can't serialize a form data object this way.
All the solution i can see is to save data temporarily and use it.

Cheers,

On Friday, 28 February 2020 14:58:50 UTC+5:30, Bernd Wechner wrote:
>
> I'm using Celery quite effectively with Django as many are. It's just 
> awesome for running time consuming background tasks, and providing progress 
> bar updates to a web page. Love it.
>
> Now I would like a celery task to do some form processing. That is in a 
> Django view, where I have access to the form (or formset) that's just been 
> submitted, with all its data (in form.request.POST) and methods (like 
> form.save() which saves it to the database as a Django object or objects 
> (in the case of a formset). 
>
> Of course anything we pass to a Celery task must be serialized (as it's 
> passed through the broker) and there is plenty of help around on 
> serializing Django data objects but I can't find diddly squat on serialzing 
> forms and every effort I've tried, JSON, pickle, dill, all fails.
>
> I can serialize the POST data of course, and that great but I can't see 
> how the Celery task can then re-instantiate a form object from that.
>
> I posted this on stackoverflow as well with some richer detail: 
> https://stackoverflow.com/questions/60433090/processing-a-django-form-in-a-celery-task-how-can-the-celery-task-see-the-form
>
> I wonder if anyone has any experience to share here. Essentially I see two 
> possible solutions:
>
>    1. Serialize the form or formsets somehow. Anything better than dill 
>    out there that might?
>    2. Serialize some part of the form or formsets (eg the POST data) and 
>    re-instantiate a form or formset at the other end using it. 
>    
> Either approach would work, 1. would seem less hassle if it has a 
> solution, and 2. seems more likely to provide one to me right now.
>
> Kind regards,
>
> Bernd.
>

-- 
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 django-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/7ea98dbe-ba20-4b74-bc0f-40f6babe52e1%40googlegroups.com.

Reply via email to