So serialisieren Sie Django-Modelle mit verschachtelten Objekten (Django REST Framework)

Wie richte ich die restore_object-Methode ein, wenn ich zwei Serializer habe, von denen einer verschachtelt ist? Wenn ich beispielsweise die folgenden Serialisierer definiert habe, wie definiere ich das Wiederherstellungsobjektfeld für meinen verschachtelten Serialisierer? Aus der Dokumentation geht nicht hervor, wie mit einem solchen Fall umzugehen ist.

class UserSerializer(serializers.Serializer):
    first_name = serializers.CharField(required=True, max_length=30)
    last_name = serializers.CharField(required=True, max_length=30)
    username = serializers.CharField(required=True, max_length=30)
    email = serializers.EmailField(required=True)
    password = serializers.CharField(required=True)

    def restore_object(self, attrs, instance=None):
        if instance:
            instance.first_name = attrs.get('first_name', instance.first_name)
            instance.last_name = attrs.get('last_name', instance.last_name)
            instance.email = attrs.get('email', instance.email)
            instance.password = attrs.get('password', instance.password)

class UserProfileSerializer(serializers.Serializer):
    user = UserSerializer()
    bio = serializers.CharField()
    def restore_object(self, attrs, instance=None):
        if instance:
            instance.bio = attrs.get('bio', instance.bio)
            instance.user = ?????

Antworten auf die Frage(1)

Ihre Antwort auf die Frage