Сортировка фреймворка Django rest в порядке возрастания и убывания

#django #django-rest-framework

#django #django-rest-framework

Вопрос:

Это мой код представления

 class BlogListSerializerView(generics.ListAPIView):
    model = Blog
    serializer_class = BlogSerializer
    pagination_class = CustomPagination
  

для сортировки запрос на стороне клиента поставляется с двумя параметрами, 'sorters[0][field]' и 'sorters[0][dir]' . Параметры запроса выглядят следующим образом ?page=1amp;size=15amp;sorters[0][field]=is_approvedamp;sorters[0][dir]=asc
Я мог бы добавить первый параметр в настройках следующим образом

 REST_FRAMEWORK = {
    'ORDERING_PARAM': 'sorters[0][field]'
}
  

и я добавил в представление фильтр упорядочения и фильтр упорядочения следующим образом

     filter_backends = [filters.OrderingFilter]
    ordering_fields = ['category']
    ordering = ['-id']
  

Теперь он сортирует таблицу, но только в одном направлении, как я могу отсортировать ее в порядке возрастания и убывания, любая помощь будет оценена.

Комментарии:

1. поместите - символ в качестве префикса в свой параметр запроса

2. ‘ORDERING_PARAM’: ‘_sorters [0] [field]’ пробовал этот способ, но не работает даже в одном направлении

3. пример: /api/foo/?sorters[0][field]=id и /api/foo/?sorters[0][field]=-id

4. Более того, мне интересно, почему у вас такой уродливый ORDERING_PARAM в первую очередь (без обид)