Можете ли вы перебрать chunks () с помощью request.POST в Django? - PullRequest
1 голос
/ 17 февраля 2010

Я пытаюсь оптимизировать сайт, который создаю с помощью Django / Flash, и у меня возникла проблема с использованием функции Django итерации по chunks (). Я отправляю изображение из Flash в Django, используя данные request.POST, а не через форму (используя request.FILES). Проблема, которую я предвижу, заключается в том, что при большом пользовательском объеме я мог бы потенциально убить память.

Но похоже, что Django позволяет перебирать фрагменты только по запросу. ФАЙЛЫ. Есть ли способ:

1) обернуть мой запрос. Данные POST в запрос. ФАЙЛЫ (таким образом, подделывая Django)

или

2) использовать chunks () с запросом. Данные POST

1 Ответ

1 голос
/ 18 февраля 2010

Метод chunks() доступен только для объекта django.core.files.uploadedfile.UploadedFile, который сам является потомком django.core.files.base.File. Из документации по обработке загруженных файлов :

Последний кусок головоломки обработка фактических данных файла из request.FILES. Каждая запись в этом словарь является объектом UploadedFile - простая обертка вокруг загруженного файла.

Так что, если вы можете создать свой собственный объект UploadedFile, тогда вы сможете поработать над магией с chunks(). Я рекомендую посмотреть на DjangoSnippets , в котором может быть какой-то код, который вы можете использовать в качестве примера того, как это сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...