У объекта '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'
спасибо за время