django-rest-framework icon indicating copy to clipboard operation
django-rest-framework copied to clipboard

Add MODEL_SERIALIZER_FIELD_MAPPING settings

Open TheSuperiorStanislav opened this issue 1 year ago • 0 comments

Add way to extend field mapping for ModelSerializer without redefining.

As of now the only way to do it is to make such hack

class ModelSerializer:
  @property
    def serializer_field_mapping(
        self,
    ) -> dict[type[Field], type[serializers.Field]]:
        """Extend serializer mapping with custom fields."""
        serializer_field_mapping = super().serializer_field_mapping
        serializer_field_mapping[FileField] = CustomField
        serializer_field_mapping[ImageField] = CustomField
        return serializer_field_mapping

But for this users need to do this for every serializer or create a base one. This setting will simplify this and make it easier to extend mapping for custom or unsupported fields.

TheSuperiorStanislav avatar Aug 21 '24 04:08 TheSuperiorStanislav