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
« prev ^ index » next coverage.py v7.10.7, created at 2025-10-13 15:18 +0200
1from rest_framework import serializers
3from api.models import Ticket
4from api.serializers import TicketSerializer
5from qr_code_service.models import QrCode
8class QRCodeSerializer(serializers.ModelSerializer):
9 """
10 Sérialiseur pour le modèle QRCode.
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.
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.
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']
38class TicketIdSerializer(serializers.Serializer):
39 ticket_id = serializers.IntegerField()