Jak serializować modele Django za pomocą zagnieżdżonych obiektów (Django REST Framework)
Jeśli mam dwa serializatory, w których jeden jest zagnieżdżony, jak skonfigurować metodę restore_object? Na przykład, jeśli mam zdefiniowane następujące serializatory, jak zdefiniować pole obiektu przywracania dla mojego zagnieżdżonego serializatora? Z dokumentacji nie wiadomo, jak postępować z taką sprawą.
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 = ?????