课程详情未显示

Course Details are not showing

我正在尝试从已注册的课程中获取课程详细信息,但 returns 只有课程 ID。我尝试使用嵌套的序列化器,但它出错了。如何使用以下设置获取课程详细信息

型号

class Course(models.Model):
    course_name = models.CharField(max_length=300,default=None)
    author = models.ForeignKey(TeacherProfile,on_delete=models.CASCADE,null=True,default=None)
    course_description = models.TextField(null=True)
    course_cover = models.ImageField(null=True,blank=True,upload_to='course_covers/')

    def __str__(self):
        return self.course_name



class Enrollment(models.Model):
    enroll_key = models.CharField(max_length=100,default="Text here",null=True)
    course = models.ForeignKey(Course,on_delete=models.CASCADE,null=True,related_name='enrollment')
    student = models.ForeignKey(StudentProfile,on_delete=models.CASCADE,null=True)

    def __str__(self):
        return self.course.course_name

序列化器

class MycoursesSerializer(serializers.ModelSerializer):
    class Meta:
        model = Enrollment
        fields = "__all__"

查看

@api_view(['GET'])
@permission_classes([IsAuthenticated])
def MyCourses(request):
    student = StudentProfile.objects.get(user=request.user)
    courses_enrolled = Enrollment.objects.filter(student=student)
    serializer = MycoursesSerializer(courses_enrolled,many=True)
    return Response(serializer.data)

回应

{
        "id": 1,
        "enroll_key": "Text here",
        "course": 1,
        "student": 1
    }
class MycoursesSerializer(serializers.ModelSerializer):
    class Meta:
        model = Enrollment
        fields = "__all__"
        depth = 1