Я создал форму для загрузки файлов на основе этого руководства:
Нужен минимальный пример загрузки файла Django
Я хочу изменить это, чтобы разрешить загрузку нескольких файлов. Я попробовал пару подходов без особой удачи. Любой совет приветствуется.
Форма загрузки
<form action="{% url 'list' %}" method="post" enctype="multipart/form-data">
{% csrf_token %}
<p>{{ form.non_field_errors }}</p>
<p>{{ form.docfile.label_tag }} {{ form.docfile.help_text }}</p>
<p>
{{ form.docfile.errors }}
{{ form.docfile }}
</p>
<p><input type="submit" value="Upload" /></p>
</form>
views.py
def list(request):
if request.method == 'POST':
form = DocumentForm(request.POST, request.FILES)
if form.is_valid():
newdoc = Document(docfile=request.FILES['docfile'])
newdoc.save()
return HttpResponseRedirect(reverse('list'))
else:
form = DocumentForm() # A empty, unbound form
documents = Document.objects.all()
return render(
request,
'check/list.html',
{'documents': documents, 'form': form}
)
forms.py
class DocumentForm(forms.Form):
docfile = forms.FileField(
label='Select a file',
help_text='max. 42 megabytes',
)