Commit 9d3fae27 by Eric Buehl

parameterize identity field class to allow for easier subclassing

parent 1c935cd3
...@@ -903,6 +903,7 @@ class HyperlinkedModelSerializer(ModelSerializer): ...@@ -903,6 +903,7 @@ class HyperlinkedModelSerializer(ModelSerializer):
_options_class = HyperlinkedModelSerializerOptions _options_class = HyperlinkedModelSerializerOptions
_default_view_name = '%(model_name)s-detail' _default_view_name = '%(model_name)s-detail'
_hyperlink_field_class = HyperlinkedRelatedField _hyperlink_field_class = HyperlinkedRelatedField
_hyperlink_identify_field_class = HyperlinkedIdentityField
def get_default_fields(self): def get_default_fields(self):
fields = super(HyperlinkedModelSerializer, self).get_default_fields() fields = super(HyperlinkedModelSerializer, self).get_default_fields()
...@@ -911,7 +912,7 @@ class HyperlinkedModelSerializer(ModelSerializer): ...@@ -911,7 +912,7 @@ class HyperlinkedModelSerializer(ModelSerializer):
self.opts.view_name = self._get_default_view_name(self.opts.model) self.opts.view_name = self._get_default_view_name(self.opts.model)
if 'url' not in fields: if 'url' not in fields:
url_field = HyperlinkedIdentityField( url_field = self._hyperlink_identify_field_class(
view_name=self.opts.view_name, view_name=self.opts.view_name,
lookup_field=self.opts.lookup_field lookup_field=self.opts.lookup_field
) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment