diff --git a/rest_framework/fields.py b/rest_framework/fields.py index bbe71ef42..81bf12875 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -951,6 +951,7 @@ class FileField(WritableField): def __init__(self, *args, **kwargs): self.max_length = kwargs.pop('max_length', None) self.allow_empty_file = kwargs.pop('allow_empty_file', False) + self.show_url = kwargs.pop('show_url', False) super(FileField, self).__init__(*args, **kwargs) def from_native(self, data): @@ -975,6 +976,8 @@ class FileField(WritableField): return data def to_native(self, value): + if self.show_url: + return value.url return value.name @@ -993,11 +996,6 @@ class ImageField(FileField): self.show_url = kwargs.pop('show_url', False) super(ImageField, self).__init__(*args, **kwargs) - def to_native(self, value): - if self.show_url: - return value.url - return value.name - def from_native(self, data): """ Checks that the file-upload field data contains a valid image (GIF, JPG,