Opened 20 months ago

Last modified 14 months ago

#21548 assigned New feature

Add the ability to limit file extensions for ImageField and FileField

Reported by: timo Owned by: jfilipe
Component: Forms Version: master
Severity: Normal Keywords:
Cc: anubhav9042@… Triage Stage: Accepted
Has patch: yes Needs documentation: yes
Needs tests: no Patch needs improvement: yes
Easy pickings: no UI/UX: no

Description

ImageField/FileField could have an optional extension whitelist. This could default to being empty for both fields to be totally backwards compatible, or could have sensible defaults for the ImageField based on the file types supported by PIL/low. The documentation should warn that you should not rely on file extensions to determine the actual content type of files.

There are probably some existing implementations we could borrow from, for example:

https://djangosnippets.org/snippets/977/

Change History (6)

comment:1 Changed 16 months ago by jfilipe

  • Owner changed from nobody to jfilipe
  • Status changed from new to assigned

comment:2 Changed 16 months ago by jfilipe

I have a work in progress PR here: https://github.com/jfilipe/django/pull/2

Wanted to get some feedback on the approach before I added some docs.

comment:3 Changed 16 months ago by jfilipe

  • Has patch set

comment:4 Changed 14 months ago by timo

  • Needs documentation set
  • Patch needs improvement set

Hi, I left a comment for improvement on the PR, although it's better to open a PR against Django itself instead of your fork.

comment:5 Changed 14 months ago by anubhav9042

The patch looks good but the validator must be like others as Tim suggested on your PR.
Also adding it to ImageField by default sounds good. I hope we can fix #18543 with it.

comment:6 Changed 14 months ago by anubhav9042

  • Cc anubhav9042@… added
Note: See TracTickets for help on using tickets.
Back to Top