diff --git a/api/v1/serializers.py b/api/v1/serializers.py index 4b26877e..2ac04e6d 100644 --- a/api/v1/serializers.py +++ b/api/v1/serializers.py @@ -127,9 +127,7 @@ class CategorySerializer(serializers.ModelSerializer): ) -class CourseSerializer(serializers.ModelSerializer): - cover = ImageObjectSerializer() - gallery = GallerySerializer() +class CourseCreateSerializer(serializers.ModelSerializer): class Meta: model = Course @@ -164,7 +162,7 @@ class CourseSerializer(serializers.ModelSerializer): ) -class CourseRetrieveSerializer(CourseSerializer): +class CourseSerializer(CourseCreateSerializer): category = CategorySerializer() materials = MaterialSerializer(many=True) cover = ImageObjectSerializer() diff --git a/api/v1/views.py b/api/v1/views.py index af0b0e4a..b92e3422 100644 --- a/api/v1/views.py +++ b/api/v1/views.py @@ -13,7 +13,7 @@ from .serializers import ( ImageTextSerializer, VideoSerializer, GallerySerializer, GalleryImageSerializer, GalleryImageCreateSerializer, UserSerializer, UserPhotoSerializer, - LessonSerializer, CourseRetrieveSerializer, + LessonSerializer, CourseCreateSerializer, ImageObjectSerializer, ) from .permissions import IsAdmin, IsAdminOrIsSelf, IsAuthorOrAdmin, IsAuthorObjectOrAdmin @@ -63,10 +63,10 @@ class CourseViewSet(ExtendedModelViewSet): ).prefetch_related( 'likes', 'materials', 'content', ).all() - serializer_class = CourseSerializer + serializer_class = CourseCreateSerializer serializer_class_map = { - 'list': CourseRetrieveSerializer, - 'retrieve': CourseRetrieveSerializer, + 'list': CourseSerializer, + 'retrieve': CourseSerializer, } filter_fields = ('category', 'status', 'is_infinite', 'is_featured',) search_fields = ('author__email', 'title', 'category__title',)