django_analyses.serializers.utils package¶
Submodules¶
django_analyses.serializers.utils.polymorphic module¶
Polymorphic serializer class, copied from: https://stackoverflow.com/questions/48911345/drf-how-to-serialize-models-inheritance-read-write
-
class
django_analyses.serializers.utils.polymorphic.
PolymorphicSerializer
(instance=None, data=<class 'rest_framework.fields.empty'>, **kwargs)¶ Bases:
rest_framework.serializers.Serializer
Serializer to handle multiple subclasses of another class
- For serialized dict representations, a ‘type’ key with the class name as the value is expected: ex. {‘type’: ‘Decimal’, … }
- This type information is used in tandem with get_serializer_map(…) to manage serializers for multiple subclasses
-
create
(validated_data)¶
-
get_serializer
()¶ Return a dict to map class names to their respective serializer classes. To be implemented by all PolymorphicSerializer subclasses.
-
get_type
(instance) → str¶
-
to_internal_value
(data)¶ Dict of native values <- Dict of primitive datatypes.
-
to_representation
(instance)¶ Object instance -> Dict of primitive datatypes.
-
update
(instance, validated_data)¶
-
validate_type_key_exists
(data: dict) → None¶