У объекта 'OnlineClassSerializer' нет атрибута 'onlineClassItems_set'

Здравствуйте, я использую django и django-restframework для моего сайта, можете ли вы помочь мне с этой проблемой

проблема в том, что когда я пытаюсь получить все данные из другого сериализатора, он не может найти атрибут данных

как я могу получить все сериализованные данные из другой модели?

models.py


class OnlineClass(models.Model):
    teacher = models.ForeignKey(User, on_delete=models.CASCADE, null=True, blank=True)
    id = models.UUIDField(default=uuid.uuid4,  unique=True, primary_key=True, editable=False)
    name= models.CharField(max_length=255 ,null=True , blank=True)
    subject= models.ForeignKey(Subject, on_delete=models.SET_NULL, null=True, blank=True)
    price=models.DecimalField(max_digits=7, decimal_places=0, null=True,blank=True)
    image= models.ImageField(null=True,blank=True)
    createdAt= models.DateTimeField(auto_now_add=True)
    category= models.ForeignKey(Category, on_delete=models.SET_NULL, null=True, blank=True)
    numReviews= models.IntegerField(null=True, blank=True, default=0)
    isAvailable = models.BooleanField(default=False,null=True,blank=True)
    hasOff = models.CharField(max_length=200,null=True,blank=True)
    rating= models.DecimalField(max_digits=7, decimal_places=2, null=True,blank=True)
    students= models.IntegerField()
    def __str__(self):
        return self.name 


class OnlineClassItems(models.Model):
    onlineClass= models.ForeignKey(OnlineClass, on_delete=models.CASCADE, null=True, blank=True)
    id= models.UUIDField(default=uuid.uuid4,  unique=True, primary_key=True, editable=False)
    title= models.CharField(max_length=255 ,null=True , blank=True)
    description= models.TextField(null=True , blank=True)
    file= models.FileField(null=True,blank=True)
    image= models.ImageField(null=True,blank=True)
    def __str__(self):
        return self.title



вот код, в котором возникла проблема serializer.py

class OnlineClassItemsSerializer(serializers.ModelSerializer):
    comments = serializers.SerializerMethodField(read_only=True)

    class Meta:
        model=OnlineClassItems
        fields="__all__"

    def get_comments(obj,self):
        comments = obj.comments_set.all().order_by("-createdAt")
        serializer = CommentsSerializer(comments , many=True)
        return serializer.data

class OnlineClassSerializer(serializers.ModelSerializer):
    onlineclassitems= serializers.SerializerMethodField(read_only=True)
    reviews= serializers.SerializerMethodField(read_only=True)
    teacher= serializers.SerializerMethodField(read_only=True)
    class Meta:
        model =OnlineClass
        fields ="__all__"
    
    def get_onlineclassitems(obj,self):
        onlineclassitems=  obj.onlineClassItems_set.all().order_by("-createdAt") #error is here
        serializer = OnlineClassItemsSerializer(onlineclassitems , many=True)
        return serializer.data

    def get_reviews(obj,self):
        reviews = obj.reviews_set.all().order_by("-createdAt")
        serializer = ReviewsSerializer(reviews , many=True)
        return serializer.data
   
    def get_teacher(obj,self):
        teacher = obj.teacher
        serializer = TeacherSerializer(teacher, many=False)


и ошибка

'OnlineClassSerializer' object has no attribute 'onlineClassItems_set'

спасибо за время

Вернуться на верх