diff options
| -rw-r--r-- | rest_framework/fields.py | 2 | ||||
| -rw-r--r-- | tests/test_fields.py | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 5fb0ec8d..f86f6626 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -913,6 +913,8 @@ class FileField(Field): def to_representation(self, value): if self.use_url: + if not value: + return None url = settings.MEDIA_URL + value.url request = self.context.get('request', None) if request is not None: diff --git a/tests/test_fields.py b/tests/test_fields.py index bbd9f93d..eaa0a3c8 100644 --- a/tests/test_fields.py +++ b/tests/test_fields.py @@ -879,7 +879,8 @@ class TestFileField(FieldValues): (MockFile(name='x' * 100, size=10), ['Ensure this filename has at most 10 characters (it has 100).']) ] outputs = [ - (MockFile(name='example.txt', url='/example.txt'), '/example.txt') + (MockFile(name='example.txt', url='/example.txt'), '/example.txt'), + ('', None) ] field = fields.FileField(max_length=10) |
