diff --git a/Back-End/School/serializers.py b/Back-End/School/serializers.py index c23af9d..fc5a566 100644 --- a/Back-End/School/serializers.py +++ b/Back-End/School/serializers.py @@ -182,12 +182,17 @@ class SchoolClassSerializer(serializers.ModelSerializer): teachers = serializers.PrimaryKeyRelatedField(queryset=Teacher.objects.all(), many=True, required=False) establishment = serializers.PrimaryKeyRelatedField(queryset=Establishment.objects.all(), required=False) teachers_details = serializers.SerializerMethodField() - students = StudentDetailSerializer(many=True, read_only=True) + students = serializers.SerializerMethodField() class Meta: model = SchoolClass fields = '__all__' + def get_students(self, obj): + # Filtrer uniquement les étudiants dont le dossier est validé (status = 5) + validated_students = obj.students.filter(registrationform__status=5) + return StudentDetailSerializer(validated_students, many=True).data + def create(self, validated_data): teachers_data = validated_data.pop('teachers', []) levels_data = validated_data.pop('levels', [])