From e9b112eecb81b4b153e2d8b04a3424b100e0e1b0 Mon Sep 17 00:00:00 2001 From: Don Spaulding Date: Fri, 21 Jun 2013 13:40:20 -0400 Subject: [PATCH] Allow customization of the url field name on HyperLinkedModelSerializer --- rest_framework/serializers.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 5a8fd89f0..b58e64319 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -893,6 +893,7 @@ class HyperlinkedModelSerializerOptions(ModelSerializerOptions): super(HyperlinkedModelSerializerOptions, self).__init__(meta) self.view_name = getattr(meta, 'view_name', None) self.lookup_field = getattr(meta, 'lookup_field', None) + self.url_field_name = getattr(meta, 'url_field_name', 'url') class HyperlinkedModelSerializer(ModelSerializer): @@ -910,12 +911,12 @@ class HyperlinkedModelSerializer(ModelSerializer): if self.opts.view_name is None: self.opts.view_name = self._get_default_view_name(self.opts.model) - if 'url' not in fields: + if self.opts.url_field_name not in fields: url_field = HyperlinkedIdentityField( view_name=self.opts.view_name, lookup_field=self.opts.lookup_field ) - fields.insert(0, 'url', url_field) + fields.insert(0, self.opts.url_field_name, url_field) return fields