Кто-нибудь знает актуальный (сентябрь 2009 г.) пример загрузки файлов в Django?

ОБНОВЛЕНИЕ: благодаря постерам ниже, ясно, что официальная документация актуальна. Лучше прочитать это внимательно, а не просматривать кучу других страниц, которые появляются в Google.


Я продолжаю находить примеры и фрагменты для загрузки файлов в Django, но потом читаю людей, которые говорят, что они устарели.

Вот мои основные заблуждения (от просмотра различных примеров) в Интернете.

Нужно ли мне вручную сохранять данные файла (т. Е. Открывать файл и записывать его, как в этом примере) или Django теперь автоматически сохраняет файл, когда я сохраняю модель с полем типа File?

Нужно ли вручную получать данные файла откуда-то, чтобы скопировать их в это поле в модели? Я имею в виду, я понимаю, что request.FILES устарел), но когда я загружаю файл из пользовательской HTML-формы (используя тег

ура

Фил

1 ответ

Решение

Документы очень хороши в этом отношении и актуальны.

Для основной загрузки файлов просто используйте FileField в твоей форме. Проходя в request.POST а также request.FILES к этой форме сделает работу за вас. Конечно, request.FILES насколько я могу судить, не рекомендуется.

Теперь, если вы хотите делать больше модных вещей с вашими загрузками файлов, то тогда вам, возможно, придется отойти от настроек по умолчанию FileField но, опять же, это довольно хорошо описано в документации.

Я также добавлю, что одной распространенной ошибкой является забвение enctype="multipart/form-data" в своей форме. Не включая это приводит к request.FILES быть пустым

Другие вопросы по тегам