diff options
| author | Tom Christie | 2014-10-08 16:59:52 +0100 | 
|---|---|---|
| committer | Tom Christie | 2014-10-08 16:59:52 +0100 | 
| commit | 5ead8dc89d1a99d6189170dc8dac19cdc8ba7750 (patch) | |
| tree | fb6dd48b39ff2000f69d28524c6748725d329668 | |
| parent | 4c015df28cfb7dc7cf29f6dc4985c57e1f5cdc5d (diff) | |
| download | django-rest-framework-5ead8dc89d1a99d6189170dc8dac19cdc8ba7750.tar.bz2 | |
Support empty file fields
| -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) | 
