aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework
diff options
context:
space:
mode:
authorTom Christie2015-02-06 16:15:10 +0000
committerTom Christie2015-02-06 16:15:10 +0000
commit0240df1a383342aa6fbb8ea3effa0482ae213d76 (patch)
tree9bd722d911ad1634db9fbfec9679545c2d874274 /rest_framework
parent670723f0216e5aea3aa133c99703949900be3d20 (diff)
downloaddjango-rest-framework-0240df1a383342aa6fbb8ea3effa0482ae213d76.tar.bz2
Minor internal API cleanpu
Diffstat (limited to 'rest_framework')
-rw-r--r--rest_framework/serializers.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py
index 7f3fd078..7235d8c5 100644
--- a/rest_framework/serializers.py
+++ b/rest_framework/serializers.py
@@ -855,8 +855,9 @@ class ModelSerializer(Serializer):
)
# Include any kwargs defined in `Meta.extra_kwargs`
- field_kwargs = self.build_field_kwargs(
- field_kwargs, extra_kwargs, field_name
+ extra_field_kwargs = extra_kwargs.get(field_name, {})
+ field_kwargs = self.include_extra_kwargs(
+ field_kwargs, extra_field_kwargs
)
# Create the serializer field.
@@ -1064,14 +1065,12 @@ class ModelSerializer(Serializer):
(field_name, model_class.__name__)
)
- def build_field_kwargs(self, kwargs, extra_kwargs, field_name):
+ def include_extra_kwargs(self, kwargs, extra_kwargs):
"""
- Include an 'extra_kwargs' that have been included for this field,
+ Include any 'extra_kwargs' that have been included for this field,
possibly removing any incompatible existing keyword arguments.
"""
- extras = extra_kwargs.get(field_name, {})
-
- if extras.get('read_only', False):
+ if extra_kwargs.get('read_only', False):
for attr in [
'required', 'default', 'allow_blank', 'allow_null',
'min_length', 'max_length', 'min_value', 'max_value',
@@ -1079,10 +1078,10 @@ class ModelSerializer(Serializer):
]:
kwargs.pop(attr, None)
- if extras.get('default') and kwargs.get('required') is False:
+ if extra_kwargs.get('default') and kwargs.get('required') is False:
kwargs.pop('required')
- kwargs.update(extras)
+ kwargs.update(extra_kwargs)
return kwargs