diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 80eefbf08..8e245405a 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -530,8 +530,9 @@ class HyperlinkedModelSerializer(ModelSerializer): def __init__(self, *args, **kwargs): if self.opts.view_name is None: self.opts.view_name = self._get_default_view_name(self.opts.model) - - self.base_fields.insert(0, 'url', HyperlinkedIdentityField(view_name=self.opts.view_name)) + + if not 'url' in self.base_fields: + self.base_fields.insert(0, 'url', HyperlinkedIdentityField(view_name=self.opts.view_name)) super(HyperlinkedModelSerializer, self).__init__(*args, **kwargs)