diff --git a/apps/video/views.py b/apps/video/views.py index ed0b6f1..c8d3d69 100755 --- a/apps/video/views.py +++ b/apps/video/views.py @@ -164,6 +164,21 @@ class VideoPlaylistListAPIView(generics.ListAPIView): # Filter playlists by these IDs queryset = queryset.filter(id__in=bookmarked_ids) + sort = self.request.query_params.get('sort', '-created_at') + allowed_sorts = [ + 'created_at', '-created_at', 'view_count', '-view_count', + 'title', '-title','order' , 'order', + 'total_time', '-total_time','-created_at','created_at' + ] + + if sort in allowed_sorts: + # Handle multiple sort fields (e.g., '-pin,-created_at') + if ',' in sort: + queryset = queryset.order_by(*sort.split(',')) + else: + queryset = queryset.order_by(sort) + else: + queryset = queryset.order_by('-created_at') return queryset