# Copyright (C) 2020 by Animath # SPDX-License-Identifier: GPL-3.0-or-later from rest_framework import serializers from rest_polymorphic.serializers import PolymorphicSerializer from ..models import CoachRegistration, ParticipantRegistration, \ StudentRegistration, VolunteerRegistration class CoachSerializer(serializers.ModelSerializer): class Meta: model = CoachRegistration fields = '__all__' class ParticipantSerializer(serializers.ModelSerializer): class Meta: model = ParticipantRegistration fields = '__all__' class StudentSerializer(serializers.ModelSerializer): class Meta: model = StudentRegistration fields = '__all__' class VolunteerSerializer(serializers.ModelSerializer): class Meta: model = VolunteerRegistration fields = '__all__' class RegistrationSerializer(PolymorphicSerializer): model_serializer_mapping = { CoachRegistration: CoachSerializer, StudentRegistration: StudentSerializer, VolunteerRegistration: VolunteerSerializer, }