electis
@electis
Программист Python/Django

Как реализовать загрузку нескольких файлов из формы в Django?

Нужна минимальная форма с возможностью загрузки нескольких файлов за раз, дальше во вьюшке буду сохранять в модели.
Подскажите, пожалуйста, что писать в forms, views и шаблоне?
  • Вопрос задан
  • 392 просмотра
Решения вопроса 1
electis
@electis Автор вопроса
Программист Python/Django
class LoadNewForm(forms.Form):
    file = forms.FileField(widget=forms.ClearableFileInput(attrs={'multiple': True}))


def load_new(request):
    if request.method == "POST":
        newtrack = forms.LoadNewForm(request.POST, request.FILES)
        if newtrack.is_valid():
            files = newtrack.files.getlist('file')
            for f in files:
                print(f.name)
            data = {"header" : "Успешно загружены",}
        else:
            data = {"header" : "Ошибка проверки формы",}
    else:
        data = {
            "header"    : "Загрузить файлы",
            "form"      : forms.LoadNewForm(),}
    return render(request, "load_new.html", context=data)


{% if form %}
        <form method="POST" enctype="multipart/form-data">
            <div class="form-group">
            {% csrf_token %}
            {{ form }}
            <input class="btn btn-primary" type="submit" value="Send" >
            </div>
        </form>
    {% endif %}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы