diff --git a/api/v1/serializers.py b/api/v1/serializers.py index ed517425..5e6757eb 100644 --- a/api/v1/serializers.py +++ b/api/v1/serializers.py @@ -197,8 +197,7 @@ class LessonSerializer(LessonCreateSerializer): cover = ImageObjectSerializer() -class ImageSerializer(serializers.ModelSerializer): - img = ImageObjectSerializer() +class ImageCreateSerializer(serializers.ModelSerializer): class Meta: model = Image @@ -220,6 +219,12 @@ class ImageSerializer(serializers.ModelSerializer): ) +class ImageSerializer(serializers.ModelSerializer): + course = CourseSerializer() + lesson = LessonSerializer() + img = ImageObjectSerializer() + + class TextSerializer(serializers.ModelSerializer): class Meta: diff --git a/api/v1/views.py b/api/v1/views.py index 016f920b..d487a057 100644 --- a/api/v1/views.py +++ b/api/v1/views.py @@ -9,7 +9,7 @@ from . import ExtendedModelViewSet from .serializers import ( CategorySerializer, CourseSerializer, MaterialSerializer, LikeSerializer, - ImageSerializer, TextSerializer, + ImageSerializer, TextSerializer, ImageCreateSerializer, ImageTextSerializer, VideoSerializer, GallerySerializer, GalleryImageSerializer, GalleryImageCreateSerializer, UserSerializer, UserPhotoSerializer, @@ -101,7 +101,11 @@ class ImageViewSet(ExtendedModelViewSet): queryset = Image.objects.select_related( 'course', 'lesson', 'img', ).all() - serializer_class = ImageSerializer + serializer_class = ImageCreateSerializer + serializer_class = { + 'list': ImageSerializer, + 'retrieve': ImageSerializer, + } search_fields = ('title',) ordering_fields = ('title', 'created_at', 'update_at', 'position',) # permission_classes = (IsAuthorOrAdmin,)