Opened 2 years ago
Closed 2 years ago
#34143 closed Uncategorized (invalid)
Multiple file upload docs
Reported by: | Guillaume LEBRETON | Owned by: | Guillaume LEBRETON |
---|---|---|---|
Component: | Documentation | Version: | 4.1 |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Unreviewed | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
In the docs, https://docs.djangoproject.com/en/dev/topics/http/file-uploads/#uploading-multiple-files
there is this code snippet:
def post(self, request, *args, **kwargs): form_class = self.get_form_class() form = self.get_form(form_class) files = request.FILES.getlist('file_field') if form.is_valid(): for f in files: ... # Do something with each file. return self.form_valid(form) else: return self.form_invalid(form)
I think it's a bit confusing to use form validation and then get the file list directly from the request.
I found that replacing files = request.FILES.getlist('file_field')
by files = form.files.getlist('file_field')
seems to be more consistent with the usual django form approach.
The best approach would be to access file_field
from cleaned_data but it's not really possible with multple files for now.
Change History (3)
comment:1 by , 2 years ago
Has patch: | set |
---|---|
Owner: | changed from | to
Status: | new → assigned |
comment:2 by , 2 years ago
Description: | modified (diff) |
---|
comment:3 by , 2 years ago
Component: | Uncategorized → Documentation |
---|---|
Resolution: | → invalid |
Status: | assigned → closed |
Thanks for this patch, however "Uploading multiple files" contains only a simple example how you can handle multiple files (see related #31710). Moreover
Form.files
is an undocumented API.