Kiedy złożyć do Django wielokrotnością plików przesłać formularzDjango wielu plików w jednym wejściu nie może być odczytany przez serwer
<input type="file" name="files" multiple />
uzyskać rozsądny wynik w request.FILES
:
(MultiValueDict: {u'files': [(InMemoryUploadedFile: 0202.jpg (image/jpeg)), (InMemoryUploadedFile: 0203.jpg (image/jpeg))]})
ale potem moje zamieszanie się zaczyna. Myślałem request.FILES['files']
będzie zawierać kilka plików (pojawia się lista), ale pokazuje tylko
0203.jpg
nr InMemoryUploadedFile
część i co ważniejsze: tylko ostatni plik!
Zapętlanie się przez request.FILES
z .iteritems()
tylko przechodzi do tego samego pliku, request.FILES['files']
jest wyraźnie powtarzalny; Poniższy kod faktycznie zamarł konsolę i wykonane sygnał dźwiękowy końca:
for v in request.FILES['files']:
print v
print type(v)
Więc ... Czy cokolwiek z tego to normalne? Co ja robię źle?
Jak Zaczynam myśleć, może to być błąd: Używam Django 1.4.2 z Pythona 2.7 na Windows 7.
Patrz tutaj: https://stackoverflow.com/a/46409022/5512755 Bardziej szczegółowe wyjaśnienie przyczyny. – Dunatotatos