aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework
diff options
context:
space:
mode:
Diffstat (limited to 'rest_framework')
-rw-r--r--rest_framework/serializers.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py
index 5c33300c..b3db3582 100644
--- a/rest_framework/serializers.py
+++ b/rest_framework/serializers.py
@@ -633,11 +633,10 @@ def _get_class_mapping(mapping, obj):
from the dictionary or None.
"""
- for baseclass in inspect.getmro(obj.__class__):
- val = mapping.get(baseclass)
- if val:
- return val
- return None
+ return next(
+ (mapping[cls] for cls in inspect.getmro(obj.__class__) if cls in mapping),
+ None
+ )
class ModelSerializer(Serializer):