Skip to content
Snippets Groups Projects
Commit f4bdaf6d authored by florimondmanca's avatar florimondmanca
Browse files

bug fixes

parent 9a5a377c
No related branches found
No related tags found
No related merge requests found
......@@ -70,7 +70,7 @@ class Question(models.Model):
TYPES = (
(TYPE_TEXT_SMALL, 'Texte court'),
(TYPE_TEXT_SMALL, 'Texte long'),
(TYPE_TEXT_LONG, 'Texte long'),
(TYPE_YES_NO, 'Oui/Non'),
(TYPE_DATE, 'Date'),
(TYPE_SEX, 'Sexe'),
......@@ -103,7 +103,7 @@ class Question(models.Model):
help_text="Section de formulaire associée à la question.")
def __str__(self) -> str:
return f'{self.text}{self.required and "*"}'
return f'{self.text}{self.required and "*" or ""}'
class FormEntry(models.Model):
......
......@@ -111,7 +111,8 @@ class EditionForm(models.Model):
form = models.OneToOneField(
'dynamicforms.Form',
on_delete=models.CASCADE,
verbose_name='formulaire')
null=True, blank=True,
verbose_name="formulaire d'inscription")
deadline = models.DateField(
'date butoir',
......
......@@ -46,6 +46,26 @@ class ParticipationSerializer(serializers.ModelSerializer):
}
class EditionFormSerializer(serializers.ModelSerializer):
"""Serializer for edition form objects."""
edition = serializers.PrimaryKeyRelatedField(read_only=True)
class Meta: # noqa
model = EditionForm
fields = ('id', 'edition', 'deadline')
class EditionFormDetailSerializer(EditionFormSerializer):
"""Detail serializer for edition form objects."""
form = FormDetailSerializer()
recipient = TutorSerializer()
class Meta(EditionFormSerializer.Meta): # noqa
fields = EditionFormSerializer.Meta.fields + ('form', 'recipient',)
class EditionListSerializer(serializers.HyperlinkedModelSerializer):
"""List serializer for Edition objects."""
......@@ -53,6 +73,7 @@ class EditionListSerializer(serializers.HyperlinkedModelSerializer):
project = serializers.PrimaryKeyRelatedField(read_only=True)
organizers = serializers.SerializerMethodField()
participations = serializers.SerializerMethodField()
edition_form = EditionFormSerializer()
def get_organizers(self, obj: Edition) -> int:
"""Return the number of organizers."""
......@@ -65,36 +86,22 @@ class EditionListSerializer(serializers.HyperlinkedModelSerializer):
class Meta: # noqa
model = Edition
fields = ('id', 'url', 'name', 'year', 'project', 'description',
'organizers', 'participations')
'organizers', 'participations', 'edition_form',)
extra_kwargs = {
'url': {'view_name': 'api:edition-detail'},
}
class EditionFormSerializer(serializers.ModelSerializer):
"""Serializer for edition form objects."""
form = FormDetailSerializer()
edition = serializers.PrimaryKeyRelatedField(read_only=True)
recipient = TutorSerializer()
class Meta: # noqa
model = EditionForm
fields = ('id', 'edition', 'deadline', 'recipient', 'form')
class EditionDetailSerializer(EditionListSerializer):
"""Detail serializer for Edition objects."""
organizers = UserSerializer(many=True)
participations = ParticipationSerializer(many=True)
edition_form = EditionFormSerializer()
class Meta(EditionListSerializer.Meta): # noqa
fields = EditionListSerializer.Meta.fields + ('edition_form',)
edition_form = EditionFormDetailSerializer()
class ProjectDetailSerializer(ProjectSerializer):
"""Detail serializer for project objects."""
editions = EditionListSerializer(many=True)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment