From 16e4831f905853190119e664be343b40f2422d09 Mon Sep 17 00:00:00 2001 From: "robinwilliam.hundt" <robinwilliam.hundt@stud.uni-goettingen.de> Date: Thu, 6 Dec 2018 14:45:24 +0100 Subject: [PATCH] Added StudentExportSerializer --- core/serializers/student.py | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/core/serializers/student.py b/core/serializers/student.py index 32f7c379..2f7c070e 100644 --- a/core/serializers/student.py +++ b/core/serializers/student.py @@ -3,7 +3,8 @@ from rest_framework import serializers from core.models import StudentInfo from core.serializers import DynamicFieldsModelSerializer, ExamSerializer from core.serializers.submission import (SubmissionListSerializer, - SubmissionNoTextFieldsSerializer) + SubmissionNoTextFieldsSerializer, + SubmissionNoTypeSerializer) class StudentInfoSerializer(DynamicFieldsModelSerializer): @@ -42,3 +43,24 @@ class StudentInfoForListViewSerializer(DynamicFieldsModelSerializer): 'matrikel_no', 'passes_exam', 'is_active') + + +class StudentExportSerializer(DynamicFieldsModelSerializer): + name = serializers.ReadOnlyField(source='user.fullname') + user = serializers.ReadOnlyField(source='user.username') + user_pk = serializers.ReadOnlyField(source='user.pk') + exam = serializers.ReadOnlyField(source='exam.pk') + is_active = serializers.BooleanField(source='user.is_active') + submissions = SubmissionNoTypeSerializer(many=True) + + class Meta: + model = StudentInfo + fields = ('pk', + 'name', + 'user', + 'user_pk', + 'exam', + 'submissions', + 'matrikel_no', + 'passes_exam', + 'is_active') -- GitLab