Bonjour,
Voici ce que je voudrais faire :
Lorsque que je créer un élément d'une table, je voudrais mettre à jour d'autres éléments d'une autre table.
J'utilise Django Rest Framework.
Voici ce que j'ai tenté de faire, bien sûr , ça ne fonctionne pas mais vous comprendrez peût être mieux mon objectif
Voici l'erreur que j'ai:
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
16
17
18
19
20
21
22
23
24
25
26
27
28 class OrderWorkflowViewSet(viewsets.ModelViewSet): queryset = Order_Workflow.objects.all() serializer_class = OrderWorflowSeriarlizer permission_classes = [permissions.IsAuthenticated] pagination_class = None def create(self,request): serializer = self.get_serializer(data=request.data) if serializer.is_valid(raise_exception=True) : if serializer.validated_data.get('status').code == 'VALID' : cancelStatus = StatusOrder.objects.filter(code='CANCE') #Je récupère la liste des commandes à mettre à jour orders = Order_Customer.objects.filter(offer=serializer.validated_data.get('order').offer).exclude(id=serializer.validated_data.get('order').id) #Je voudrais mettre à jour le statut de chacune d'entre elles for order in orders: s = Order_UserSerializer(data=order) s.currentStatus = cancelStatus if s.is_valid(raise_exception=True): s.save() self.perform_create(serializer) return Response(serializer._data) def perform_create(self,serializer): serializer.save()
Je pense que c'est du tout comme ça qu'il faut faire, mais je ne vois pas commen.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 { "non_field_errors": [ "Invalid data. Expected a dictionary, but got Order_Customer." ] }
Merci pour votre aide
Partager