Browse Source

category list filter courses

master
alireza 1 year ago
parent
commit
102543c41a
  1. 15
      apps/course/views/course.py

15
apps/course/views/course.py

@ -72,11 +72,17 @@ class CourseListAPIView(ListAPIView):
queryset = super().get_queryset()
request = self.request
filters = request.query_params
if category := filters.get('category_slug'):
queryset = queryset.filter(category__slug=category)
if status := filters.get('status'):
queryset = queryset.filter(status=status)
# Handle category_slug with multiple values separated by commas
if category_slugs := filters.get('category_slug'):
category_slugs_list = category_slugs.split(',')
queryset = queryset.filter(category__slug__in=category_slugs_list)
# Handle status with multiple values separated by commas
if statuses := filters.get('status'):
statuses_list = statuses.split(',')
queryset = queryset.filter(status__in=statuses_list)
if is_free := filters.get('is_free'):
is_free = is_free.lower() == 'true'
queryset = queryset.filter(
@ -91,6 +97,7 @@ class CourseListAPIView(ListAPIView):
class CourseDetailAPIView(RetrieveAPIView):
queryset = Course.objects.all()
serializer_class = CourseDetailSerializer

Loading…
Cancel
Save