@dblmok_1997

Django. Загрузка файла на сервер. Проблемы с валидацией?

Здравствуйте!

Вроде тема довольно заезжаная, и довольно много материала написано по этому вопросу, но что-то не срастается.
Необходимо: загрузить файл из формы на странице, обработать и сохранить в другой файл/добавить в БД. Без разницы особо. Остановимся на варианте с сохранением промежуточным в файл.

forms.py

class UploadFileForm(forms.Form):
    title = forms.CharField(max_length=50)
    file = forms.FileField()


views.py

def uploadFile(request):
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        if form.is_valid():
            handle_uploaded_file(request.FILES['file'])
            return HttpResponseRedirect('/success/url/')
    else:
        form = UploadFileForm()
    return render_to_response('upload/main.html', {'form': form})
 
 
def handle_uploaded_file(f):
    destination = open('addfile', 'wb+')
    for chunk in f.chunks():
        destination.write(chunk)
    destination.close()

Все обрабатывается, ошибок никаких не вылезает, но и ничего не происходит вместе с тем. Проблема заключается в том, что программа не заходит в if с валидацией.

Сама форма:
<form enctype="multipart/form-data" action="/upload/uploadFile" method="post">
    {% csrf_token %}
    <label for="addfileids">Добавить файл </label>
    <input id="addfileids" type="file" name="addfileids">
    <button type="submit" value="Добавить", class="btn btn-primary">Добавить</button>
</form>
  • Вопрос задан
  • 430 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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