Кто-нибудь знает актуальный (сентябрь 2009 г.) пример загрузки файлов в Django?
ОБНОВЛЕНИЕ: благодаря постерам ниже, ясно, что официальная документация актуальна. Лучше прочитать это внимательно, а не просматривать кучу других страниц, которые появляются в Google.
Я продолжаю находить примеры и фрагменты для загрузки файлов в Django, но потом читаю людей, которые говорят, что они устарели.
Вот мои основные заблуждения (от просмотра различных примеров) в Интернете.
Нужно ли мне вручную сохранять данные файла (т. Е. Открывать файл и записывать его, как в этом примере) или Django теперь автоматически сохраняет файл, когда я сохраняю модель с полем типа File?
Нужно ли вручную получать данные файла откуда-то, чтобы скопировать их в это поле в модели? Я имею в виду, я понимаю, что request.FILES устарел), но когда я загружаю файл из пользовательской HTML-формы (используя тег
ура
Фил
1 ответ
Документы очень хороши в этом отношении и актуальны.
Для основной загрузки файлов просто используйте FileField
в твоей форме. Проходя в request.POST
а также request.FILES
к этой форме сделает работу за вас. Конечно, request.FILES
насколько я могу судить, не рекомендуется.
Теперь, если вы хотите делать больше модных вещей с вашими загрузками файлов, то тогда вам, возможно, придется отойти от настроек по умолчанию FileField
но, опять же, это довольно хорошо описано в документации.
Я также добавлю, что одной распространенной ошибкой является забвение enctype="multipart/form-data"
в своей форме. Не включая это приводит к request.FILES
быть пустым