|
|
|
|
@ -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',) |
|
|
|
|
|