Проблема с установкой только одного поля сериализатора в режим read_only Django Rest Framework

У меня есть сериализатор модели, и в нем много полей, которые я хочу использовать fields="__all__", но при этом иметь возможность установить одно поле в read_only = True. Я пробовал сделать это следующим образом:

class InstitutionSerializer(serializers.ModelSerializer):
    class Meta:
        model = Institution
        fields = "__all__"

    def __init__(self, *args, **kwargs):
        super(InstitutionSerializer, self).__init__(*args, **kwargs)
        for field in self.fields:
            if field == "owner":
                self.fields[field].read_only = True

Но он все равно выставляет флаг "owner": ["This field is required."], который мне не нужен, потому что я хочу, чтобы он мог установить его на моем представлении.

Я также пробовал extra_kwargs = {"owner": {"read_only": True}} и read_only_fields = ("owner",), но все равно не получается.

Вернуться на верх