diff options
| author | Timo Tuominen | 2014-09-01 12:17:36 +0300 |
|---|---|---|
| committer | Timo Tuominen | 2014-09-01 15:02:49 +0300 |
| commit | 82d4b2083292659358d5df4d03d2115576e8ae4e (patch) | |
| tree | 60bf07e95e00ec8e512bd24533a5d064d5eaca74 | |
| parent | b40525d8e6b3b4839c61053bc1613843d5b8b63d (diff) | |
| download | django-rest-framework-82d4b2083292659358d5df4d03d2115576e8ae4e.tar.bz2 | |
Add subclass matching to serializer field mapping.
| -rw-r--r-- | rest_framework/serializers.py | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index be8ad3f2..6d25161e 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -907,6 +907,9 @@ class ModelSerializer(Serializer): try: return self.field_mapping[model_field.__class__](**kwargs) except KeyError: + for model_field_class, serializer_field_class in self.field_mapping.items(): + if isinstance(model_field, model_field_class): + return serializer_field_class(**kwargs) return ModelField(model_field=model_field, **kwargs) def get_validation_exclusions(self, instance=None): |
