StudE-Backend/stude/subjects/serializers.py

23 lines
971 B
Python
Raw Permalink Normal View History

2023-06-27 18:15:31 +08:00
from rest_framework import serializers
from .models import Subject, SubjectInstance
2023-06-27 18:42:34 +08:00
from courses.models import Course
2023-07-17 21:23:27 +08:00
from year_levels.models import Year_Level
from semesters.models import Semester
2023-06-27 18:15:31 +08:00
class SubjectInstanceSerializer(serializers.ModelSerializer):
name = serializers.StringRelatedField(source='subject', read_only=True)
year_level = serializers.SlugRelatedField(
queryset=Subject.objects.all(), slug_field='name', allow_null=False)
year_level = serializers.SlugRelatedField(
queryset=Year_Level.objects.all(), slug_field='name', allow_null=True)
semester = serializers.SlugRelatedField(
queryset=Semester.objects.all(), slug_field='name', allow_null=True)
course = serializers.SlugRelatedField(
queryset=Course.objects.all(), slug_field='name', allow_null=True)
class Meta:
model = SubjectInstance
fields = ('id', 'name', 'code',
'course', 'year_level', 'semester')