Каков наилучший способ разрешить пользователю выполнять произвольное количество загрузок файлов с помощью Django?
Если бы я знал, что разрешу пользователю делать до двух загрузок файлов, я мог бы просто сделать это в своем forms.py
...
from django import forms
class UploaderForm(forms.Form):
file1 = forms.FileField(upload_to='user_files')
file2 = forms.FileField(upload_to='user_files')
... а это по моему views.py
...
...
if request.method == 'POST':
form = UploaderForm(request.POST)
if form.is_valid():
form.save()
# do something.
else:
form = UploaderForm()
...
Однако я планирую использовать Javascript на внешнем интерфейсе, чтобы позволить пользователю постоянно добавлять новые <input type="file" name="fileN" />
элементы (где N - это N-ное поле загрузки файла, добавляемое на страницу.) Пользователь может выбрать, чтобы сделать свою загрузку с одним или несколькими выбранными файлами.
Есть ли способ, которым я могу использовать встроенные формы Джанго для достижения этой цели?
Если, как я подозреваю, я не могу использовать формы Django для генерации форм, могу ли я использовать проверку Django? то есть было бы удобно иметь возможность доступа к form.cleaned_data['file0']
, form.cleaned_data['file1']
и т. д. вместо того, чтобы выполнять свою собственную проверку.
Спасибо.