Данные поля исчезают в REST-фреймворке Django

У меня есть поле "plugins" (см. ниже) в моем сериализаторе, и это сериализатор, который также содержит загрузку файла, поэтому используется MultiPartParser. Мой вид довольно стандартный, и данные поля plugins также отображаются в request.data, однако они не отображаются в validated_data сериализатора. Чтобы привести минималистичный пример, вот мой сериализатор:

class CreationSerializer(serializers.ModelSerializer, FileUploadSerializer):
    plugins = serializers.ListSerializer(
        child=serializers.CharField(), required=False, write_only=True)

    class Meta:
        fields = ['plugins'] + FileUploadSerializer.Meta.fields
        model = Company

    def create(self, validated_data):
        print(validated_data)

В то время как это будет мой views.py:

@swagger_auto_schema(request_body=CreationSerializer(), responses={201: CreationSerializer()}, operation_id='the_post')
def create(self, request, *args, **kwargs):
    print(request.data)
    return super().create(request, *args, **kwargs) # which uses mixins.CreateModelMixin

Я пробовал добавить другой парсер (например, JSONParser) в список парсеров, но это ничего не меняет.

Работает ли это, если заменить на это? Я не уверен, но возможно drf не распознает ListSerializer как поле, я всегда использовал Serializer с many=True:

plugins = serializers.ListField(child=serializers.CharField(), required=False, write_only=True)
Вернуться на верх