Je ces serializers:Comment remplacer un objet par son identifiant dans Django Rest Framework?
class ASerializer(serializers.ModelSerializer):
name = serializers.CharField()
class Meta:
model = AModel
fields = ('id','name')
class BSerializer(serializers.HyperlinkedModelSerializer):
a = ASerializer(partial=True)
name = serializers.CharField()
class Meta:
model = BModel
fields = ('id','name', 'a')
class CSerializer(serializers.HyperlinkedModelSerializer):
b = BSerializer(partial=True)
created_by = UserSerializer(required=False)
message = serializers.CharField()
class Meta:
model = CModel
fields = ('id','b', 'created_by', 'message')
est au-dessous les données, je vous envoie au service:
data_json = {
"id": '1',
"b": '2',
"created_by":'3',
"message": 'Hello world'
}
Je veux que les données de réponse à inclure de tous les objets parfaits imbriqués, non seulement id objets imbriqués .
Comment puis-je remplacer un objet B
ou created_by
par leur identifiant afin de créer un objet C
?
essayer changer les champs à '(" id "," b__id "," created_by__id "," message ")' –
et aussi vous obtenez l'identifiant en utilisant l'objet complet ct json comme 'b ['id']', 'crearted_by ['id']' lors de la création de l'objet C –
veuillez essayer de mieux expliquer ce que vous voulez faire. Comment devrait ressembler le data_json? – ozren1983