Always set FileField.use_url property.

`FileField.use_url` property should be always set to allow more simple usage of it in subclasses.
This commit is contained in:
Serge Matveenko 2015-12-30 17:14:43 +03:00
parent af0ea8ef51
commit 1cb4dff1be

View File

@ -1352,8 +1352,7 @@ class FileField(Field):
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
self.max_length = kwargs.pop('max_length', None) self.max_length = kwargs.pop('max_length', None)
self.allow_empty_file = kwargs.pop('allow_empty_file', False) self.allow_empty_file = kwargs.pop('allow_empty_file', False)
if 'use_url' in kwargs: self.use_url = kwargs.pop('use_url', api_settings.UPLOADED_FILES_USE_URL)
self.use_url = kwargs.pop('use_url')
super(FileField, self).__init__(*args, **kwargs) super(FileField, self).__init__(*args, **kwargs)
def to_internal_value(self, data): def to_internal_value(self, data):
@ -1374,12 +1373,10 @@ class FileField(Field):
return data return data
def to_representation(self, value): def to_representation(self, value):
use_url = getattr(self, 'use_url', api_settings.UPLOADED_FILES_USE_URL)
if not value: if not value:
return None return None
if use_url: if self.use_url:
if not getattr(value, 'url', None): if not getattr(value, 'url', None):
# If the file has not been saved it may not have a URL. # If the file has not been saved it may not have a URL.
return None return None