Coverage for qr_code_service\serializers.py: 100%

12 statements  

« prev     ^ index     » next       coverage.py v7.10.7, created at 2025-10-13 15:18 +0200

1from rest_framework import serializers 

2 

3from api.models import Ticket 

4from api.serializers import TicketSerializer 

5from qr_code_service.models import QrCode 

6 

7 

8class QRCodeSerializer(serializers.ModelSerializer): 

9 """ 

10 Sérialiseur pour le modèle QRCode. 

11 

12 Permet la conversion entre les objets QRCode et leur représentation JSON 

13 pour les échanges via l'API REST. Inclut tous les champs du modèle. 

14 

15 Attributes: 

16 code (str): Contenu du QR code 

17 created_at (datetime): Date et heure de création du QR code 

18 updated_at (datetime): Date et heure de la dernière mise à jour du QR code 

19 """ 

20 ticket = TicketSerializer(read_only=True) 

21 ticket_id = serializers.PrimaryKeyRelatedField( 

22 queryset=Ticket.objects.all(), 

23 write_only=True, 

24 source='ticket', 

25 ) 

26 class Meta: 

27 """ 

28 Configuration du sérialiseur. 

29 

30 Attributes: 

31 model (Model): Modèle Django associé au sérialiseur 

32 fields (str): Champs inclus dans la sérialisation 

33 """ 

34 model = QrCode 

35 fields = ['id', 'data', 'ticket', 'ticket_id'] 

36 

37 

38class TicketIdSerializer(serializers.Serializer): 

39 ticket_id = serializers.IntegerField() 

40