Получение KeyError: 'smth' при использовании validated_data.pop('smth')

Я не могу обновить форму пользователя на Django rest-framework с помощью djoser. Получаю KeyyError: "tutor" для validated_data.pop('tutor'), проверил несколько решений, но не помогло

Вот что я сделал на данный момент

serializers.py

class TutorUserSerializer(serializers.ModelSerializer):
    class Meta:
        model = TutorUser
        fields = [
            'id',
            'full_name',
            'phone_number',
            'web_link',
        ]

class UserCreateSerializer(serializers.ModelSerializer):
    
    tutor = TutorUserSerializer()

    class Meta:
        model = User
        fields = [
            'id',
            'email',
            'is_tutor',
            'password',
            'tutor',
        ]
        extra_kwargs = {
            'password': {
                'write_only': True,
                'style': {'input_type': 'password'}
            }
        }

    def create(self, validated_data):
        tutor_user_data = validated_data.pop('tutor')

        user = User(
            email = validated_data['email'],
            is_tutor = validated_data['is_tutor'],
        )
        user.set_password(validated_data['password'])
        user.save()
        if user.is_tutor:
            TutorUser.objects.create(tutor_user = user, **tutor_user_data)
            return user

class UserSerializer(serializers.ModelSerializer):
    tutor = TutorUserSerializer()
    class Meta:
        model = User
        fields = [
            'id',
            'email',
            'is_tutor',
            'tutor'
        ]

    def update(self, instance, validated_data):
        tutor_user_data = validated_data.pop('tutor')
        tutor_user = instance.tutor

        tutor_user.full_name = tutor_user_data.get(
            "full_name",
            tutor_user.full_name
        )
        tutor_user.phone_number = tutor_user_data.get(
            "phone_number",
            tutor_user.phone_number
        )

UserCreateSerializer работает хорошо, но обновление дает мне ошибку

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