From 79e2c9209cf3820d48c98627f72e59cbe78ea698 Mon Sep 17 00:00:00 2001 From: Ryan P Kilby Date: Fri, 23 Dec 2016 14:52:57 -0500 Subject: [PATCH] Check that declared base field is not in attrs --- rest_framework/serializers.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 02c24b70e..3556447bb 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -305,7 +305,11 @@ class SerializerMetaclass(type): # in order to maintain the correct order of fields. for base in reversed(bases): if hasattr(base, '_declared_fields'): - fields = list(base._declared_fields.items()) + fields + fields = [ + (field_name, obj) for field_name, obj + in base._declared_fields.items() + if field_name not in attrs + ] + fields return OrderedDict(fields)