Avoided double call for remote url in FileField.to_representation. (#6841)

This commit is contained in:
zeroohub 2019-08-06 18:31:46 +08:00 committed by Carlton Gibson
parent 0cc09f0c0d
commit 7e1c4be7ce

View File

@ -1546,16 +1546,16 @@ class FileField(Field):
return None return None
use_url = getattr(self, 'use_url', api_settings.UPLOADED_FILES_USE_URL) use_url = getattr(self, 'use_url', api_settings.UPLOADED_FILES_USE_URL)
if use_url: if use_url:
if not getattr(value, 'url', None): try:
# If the file has not been saved it may not have a URL.
return None
url = value.url url = value.url
except AttributeError:
return None
request = self.context.get('request', None) request = self.context.get('request', None)
if request is not None: if request is not None:
return request.build_absolute_uri(url) return request.build_absolute_uri(url)
return url return url
return value.name return value.name