Bonjour,
Dans un projet django qui implémente des web services rest_framework, tous les serializers ont la même forme comme ci-dessous :
J'aimerais donc écrire un code plus générique et ne créer qu'un seul serializer qui affecterait dynamiquement la variable model de la classe Meta.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 class SampleSerializer(serializers.ModelSerializer): class Meta: model = Sample fields = '__all__' class SampleTagSerializer(serializers.ModelSerializer): class Meta: model = SampleTag fields = '__all__'
Le soucis est que la variable model n'accède pas aux variables extérieures, donc il semble impossible de l'affecter dynamiquement.
De plus, il faut aussi que le serializer puisse lire la variable data qui lui est passée en paramètre pour le cas d'une désérialisation comme cela :
Bref, au départ cela parait simple mais cela ne l'est pas du tout.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 ... data = request.data serializer = SampleSerializer(data=data)
Merci pour votre aide.
A+
Partager