From 54b79db2142675b8005e573b7af28c097ef7f72d Mon Sep 17 00:00:00 2001 From: Tom Christie Date: Wed, 4 Nov 2015 14:37:32 +0000 Subject: [PATCH] Proper 'is primary key' checking --- rest_framework/serializers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 35fb8fcf0..99d36a8a5 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -1131,7 +1131,7 @@ class ModelSerializer(Serializer): field_kwargs = get_relation_kwargs(field_name, relation_info) to_field = field_kwargs.pop('to_field', None) - if to_field and to_field != 'id': + if to_field and not relation_info.related_model._meta.get_field(to_field).primary_key: field_kwargs['slug_field'] = to_field field_class = self.serializer_related_to_field