问题
i'm trying to send request.FILES['photo'], an uploaded file from my site, to tCelery via:
tasks.upload_photos.delay(img=request.FILES['photo'])
I get a pickle error because it cannot serialize it. What is the way to send a file to task?
error: "can't pickle StringO objects" thanks.
回答1:
Read the file contents into a string, then pack it with the content type in a dict and send that.
回答2:
If you plan on saving the file, you can save the file to a model, then pass the id/pk to a celery task.
来源:https://stackoverflow.com/questions/4330719/django-celery-how-to-send-request-filesphoto-to-task