Как загрузить файл в django с помощью requests_toolbelt

Когда я пытаюсь загрузить файл в django, используя requests_toolbelt и отправляя все в client.post data param, django не получает файл.

client = requests.session()

client = client.get(upload_url)
csrftoken = client.cookies['csrftoken']

encoding = MultipartEncoder(fields={'file': open(file, 'rb'), 'csrfmiddlewaretoken': csrftoken})
monitor = MultipartEncoderMonitor(encoding, callback_function)

client.post(upload_url, data=monitor, headers={'Content-Type': monitor.content_type})

но если я посылаю csrftoken в параметре data и monitor в параметре files, это дает мне

TypeError: 'MultipartEncoderMonitor' object is not iterable

Все это делается только для того, чтобы получить работающий индикатор прогресса при загрузке файлов в django.

Вернуться на верх