file-store: handle custom extensions validation better, e.g lower case and both formats .exe / exe
This commit is contained in:
parent
e1bc49fad6
commit
87de1b2988
1 changed files with 8 additions and 3 deletions
|
|
@ -143,13 +143,18 @@ class LocalFileStorage(object):
|
|||
:param ext: extension to check
|
||||
:param extensions: iterable of extensions to validate against (or self.extensions)
|
||||
"""
|
||||
def normalize_ext(_ext):
|
||||
if _ext.startswith('.'):
|
||||
_ext = _ext[1:]
|
||||
return _ext.lower()
|
||||
|
||||
extensions = extensions or self.extensions
|
||||
if not extensions:
|
||||
return True
|
||||
if ext.startswith('.'):
|
||||
ext = ext[1:]
|
||||
return ext.lower() in extensions
|
||||
|
||||
ext = normalize_ext(ext)
|
||||
|
||||
return ext in [normalize_ext(x) for x in extensions]
|
||||
|
||||
def save_file(self, file_obj, filename, directory=None, extensions=None,
|
||||
extra_metadata=None, **kwargs):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue