from rest_framework import serializers from vbv_lernwelt.course_session.models import ( CourseSessionAssignment, CourseSessionAttendanceCourse, ) class CourseSessionAttendanceCourseSerializer(serializers.ModelSerializer): start = serializers.SerializerMethodField() end = serializers.SerializerMethodField() class Meta: model = CourseSessionAttendanceCourse fields = [ "id", "course_session", "learning_content_id", "due_date_id", "location", "trainer", "start", "end", ] def get_start(self, obj): return obj.due_date.start def get_end(self, obj): return obj.due_date.end class CourseSessionAssignmentSerializer(serializers.ModelSerializer): submission_deadline_start = serializers.SerializerMethodField() evaluation_deadline_start = serializers.SerializerMethodField() class Meta: model = CourseSessionAssignment fields = [ "id", "course_session_id", "learning_content_id", "submission_deadline_id", "submission_deadline_start", "evaluation_deadline_id", "evaluation_deadline_start", ] def get_evaluation_deadline_start(self, obj): if obj.evaluation_deadline: return obj.evaluation_deadline.start def get_submission_deadline_start(self, obj): if obj.submission_deadline: return obj.submission_deadline.start