SkoolOS/Website/api/serializers.py
Raffu Khondaker 60d16b9e6a api attempt
2020-06-06 14:44:13 -04:00

33 lines
1.2 KiB
Python

from django.contrib.auth.models import User, Group
from .models import Student, Teacher, Classes, Assignment
from rest_framework import serializers
class AssignmentSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Assignment
fields = ['name', 'due_date', 'url']
class StudentSerializer(serializers.HyperlinkedModelSerializer):
assignments = AssignmentSerializer(many=True, read_only=True)
class Meta:
model = Student
fields = ['url', 'first_name', 'last_name', 'assignments']
class ClassesSerializer(serializers.HyperlinkedModelSerializer):
assignments = AssignmentSerializer(many=True, read_only=True,allow_null=True)
students = StudentSerializer(many=True, read_only=True, allow_null=True)
class Meta:
model = Classes
fields = ['url', 'name', 'students', 'assignments']
def create(self, validated_data):
return Classes.objects.create(**validated_data)
class TeacherSerializer(serializers.ModelSerializer):
classes = ClassesSerializer(many=True, read_only=True)
class Meta:
model = Teacher
fields = ['url', 'first_name', 'last_name', 'classes']