zoukankan      html  css  js  c++  java
  • 0029 DRF框架开发(16 OrderingFilter过滤器排序)

      对于列表数据,REST framework提供了OrderingFilter过滤器来排序,可以快速指定排序字段。

      找到Applications/Examples/views/School.py文件最后一个类。

      在filter_backends中增加排序过滤器。代码如下:

    from rest_framework import filters
    from rest_framework.filters import OrderingFilter
    class SchoolViewSet(GenericViewSet, mixins.ListModelMixin, mixins.CreateModelMixin, mixins.UpdateModelMixin,
                        mixins.RetrieveModelMixin, mixins.DestroyModelMixin):
        queryset = Schools.objects.all()
        serializer_class = SchoolsSerializer
        filter_backends = [OrderingFilter,filters.SearchFilter]
        search_fields = ('name',)
        ordering_fields = ('teacher_quantity', 'student_quantity', 'employment_rate')
    

      运行接口文档,找到SchoolViewSet 中的list方法,进行测试,效果如下:

       特别注意的是:排序字段必须经过序列化器,而序列化器中的临时字段是不能排序的。

  • 相关阅读:
    实验10 使用PBR实现策略路由
    实验9 使用route-policy控制路由
    实验8 filter-policy过滤路由
    实验7 ISIS多区域配置
    实验6 IS-IS基本配置
    MySQL复制表
    mysql数据备份
    mysql 创建用户,授权
    数据库
    mysql 修改文件记录:
  • 原文地址:https://www.cnblogs.com/dorian/p/12383362.html
Copyright © 2011-2022 走看看