diff --git a/apps/edu/serializers.py b/apps/edu/serializers.py index 7950f4ef..a2f37c7a 100644 --- a/apps/edu/serializers.py +++ b/apps/edu/serializers.py @@ -76,6 +76,9 @@ class PaperSerializer(CustomModelSerializer): class ExamSerializer(CustomModelSerializer): create_by_name = serializers.CharField(source='create_by.name', read_only=True) paper_name = serializers.CharField(source='paper.name', read_only=True) + paper_total_score = serializers.IntegerField(source='paper.total_score', read_only=True) + paper_pass_score = serializers.IntegerField(source='paper.pass_score', read_only=True) + paper_limit = serializers.IntegerField(source='paper.limit', read_only=True) paper = serializers.PrimaryKeyRelatedField(queryset=Paper.objects.all(), label='有考试记录,编辑时忽略') class Meta: model = Exam diff --git a/apps/edu/views.py b/apps/edu/views.py index 00e47a33..f16c59b8 100644 --- a/apps/edu/views.py +++ b/apps/edu/views.py @@ -49,6 +49,7 @@ class PaperViewSet(CustomModelViewSet): class ExamViewSet(CustomModelViewSet): queryset = Exam.objects.all() + select_related_fields = ["paper"] serializer_class = ExamSerializer filterset_class = ExamFilter retrieve_serializer_class = ExamDetailSerializer