From cfd29875f1dcc9bf3ef27e893c7e2e989a435d4c Mon Sep 17 00:00:00 2001 From: Andrea de Marco <24erre@gmail.com> Date: Sat, 9 Mar 2013 21:34:25 +0100 Subject: [PATCH] include_pk as Meta option --- rest_framework/serializers.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 3f386ceaa..f6a95a934 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -642,6 +642,7 @@ class HyperlinkedModelSerializerOptions(ModelSerializerOptions): def __init__(self, meta): super(HyperlinkedModelSerializerOptions, self).__init__(meta) self.view_name = getattr(meta, 'view_name', None) + self.include_pk = getattr(meta, 'include_pk', False) class HyperlinkedModelSerializer(ModelSerializer): @@ -669,6 +670,10 @@ class HyperlinkedModelSerializer(ModelSerializer): 'model_name': model_meta.object_name.lower() } return self._default_view_name % format_kwargs + + def get_pk_field(self, model_field): + if self.opts.include_pk: + return super(HyperlinkedModelSerializer, self).get_pk_field(model_field) def get_related_field(self, model_field, to_many): """