36 课程模块——查询所有章节接口
class CourseSectionSerializer(serializers.ModelSerializer): #用于子序列化 class Meta: model = CourseSection fields = ['id', 'name', 'orders', 'section_link', 'duration', 'free_trail'] class CourseChapterSerializer(serializers.ModelSerializer): class Meta: model = CourseChapter fields = ['id', 'name', 'coursesections'] # 子序列化,注意many=True # 方式一: coursesections = CourseSectionSerializer(many=True) # 方式二: # coursesections=serializers.SerializerMethodField() # def get_coursesections(self,obj): # return [] # 方式三:写在models中
# 课程章节接口 class CourseChapterView(GenericViewSet, ListModelMixin): # 查询所有章节 # 按课程过滤功能 queryset = CourseChapter.objects.all() serializer_class = CourseChapterSerializer filter_backends = [DjangoFilterBackend] filter_fields = ('course',)
router.register('course_chapter', views.CourseChapterView, 'course_chapter')