首页 > 其他分享 >REST framework:排序过滤器的使用

REST framework:排序过滤器的使用

时间:2024-08-24 11:37:03浏览次数:7  
标签:ordering 指定 REST framework 过滤器 排序

对于列表数据,REST framework提供了OrderingFilter过滤器来帮助我们快速指明数据按照指定字段进行排序

1、在setting中的REST_FRAMEWORK添加配置

'DEFAULT_FILTER_BACKENDS': (
 # 这个是指定使用django_filters中的过滤器来进行过滤
 'django_filters.rest_framework.DjangoFilterBackend',
 # 这个是指定使用DRF自带的排序过滤器来进行数据排序
 'rest_framework.filters.OrderingFilter'
),

2、在视图类中指定排序可选字段:ordering_fields:

REST framework会在请求的查询字符串参数中检查是否包含了ordering参数,如果包含了ordering参数,则按照ordering参数指明的排序字段对数据集进行排序。

  • 注意:默认升序排序,降序排序字段前添加负号,-字段
class UserView(ModelViewSet):
    # 指定模型类查询集
    queryset = UserInfo.objects.all()
    # 指定序列化器类
    serializer_class = UserInfoSerializer

    # 直接指定过滤字段
    # filterset_fields = ('name', 'email',)

    # 指定过滤器类
    filterset_class = UserInfoFilter

    # 指定排序的字段
    ordering_fields = ('age', 'id')

接口文档

 

 postman查看

 

标签:ordering,指定,REST,framework,过滤器,排序
From: https://www.cnblogs.com/Durant0420/p/18377575

相关文章

  • REST framework:过滤
    一、数据准备模型类classUserInfo(models.Model):name=models.CharField(max_length=20,verbose_name='用户名')pwd=models.CharField(max_length=18,verbose_name='密码')email=models.EmailField(max_length=40,verbose_name='邮箱�......
  • 什么是布隆过滤器,实现原理是什么?
    背景介绍在互联网中,我们经常遇到需要在大量数据中判断目标数据是否存在的情况。例如,在网络爬虫中,我们需要判断某个网址是否已经被访问过。为了实现这一功能,通常需要使用一个容器来存储已访问过的网址。如果将这些数据直接存储在磁盘中,每次判断都要进行磁盘查询,这将导致大量的I......
  • REST framework:接口文档
    RESTframework通过第三方库可以自动帮助我们生成网页版的接口文档,自动接口文档能生成的是继承自APIView及其子类的视图1、安装依赖RESTframewrok生成接口文档需要coreapi库的支持 pipinstallcoreapi-ihttp://mirrors.aliyun.com/pypi/simple/--trusted-hostmirrors.......
  • NSSCTF [HNCTF 2022 Week1]Interesting_include
    <?php//WEB手要懂得搜索//flagin./flag.phpif(isset($_GET['filter'])){$file=$_GET['filter'];if(!preg_match("/flag/i",$file)){die("error");}include($file);}else{highlight_file(__......
  • 利用Spring Boot的RestTemplate进行REST客户端开发
    利用SpringBoot的RestTemplate进行REST客户端开发大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿!在微服务架构中,服务之间的通信通常通过RESTAPI来实现。SpringBoot提供了RestTemplate,这是一个用于同步客户端REST请求的类。本文将介绍如何使用Spri......
  • RestSharp 组件第二弹
    安装的版本NuGet\Install-PackageRestSharp-Version106.15.0加入tokenvarclientForSave=newRestClient("http://10.30.35.22:32080/ipms/v1/12/bulletin-board/reportwork/save");varrequestForSave=newRestRequest(Method.POST);vardataToSave=new{   ......
  • Paper Reading: SAFE: Scalable Automatic Feature Engineering Framework for Indust
    目录研究动机文章贡献本文方法整体框架特征生成特征组合关系排序特征组合生成特征特征选择去除无信息特征去除冗余特征复杂度分析实验结果数据集和实验设置对比实验特征重要性比较运行时间特征稳定性不同迭代次数的性能大规模数据集实验优点和创新点PaperReading是从个人角度进......
  • 过滤器Filter
    目录一、概述二、Filter接口1.源码2.API三、使用1.步骤2.需求3.代码 四、过滤器的生命周期五、过滤器链的使用六、注解方式配置过滤器一、概述Filter,即过滤器,是JAVAEE技术规范之一,作用目标资源的请求进行过滤的一套技术规范,是JavaWeb项目中最为实用的技......
  • HBase学习的第六天--Hbase之过滤器
    Hbase之过滤器HBase的基本API,包括增、删、改、查等。增、删都是相对简单的操作,与传统的RDBMS相比,这里的查询操作略显苍白,只能根据特性的行键进行查询(Get)或者根据行键的范围来查询(Scan)。HBase不仅提供了这些简单的查询,而且提供了更加高级的过滤器(Filter)来查询。过滤器可......
  • 过滤器与拦截器
    过滤器与拦截器参考https://www.cnblogs.com/Black-Ice/p/16248535.html过滤器FilterFilter基本介绍过滤器Filter是Sun公司在Servlet2.3规范中添加的新功能,其作用是对客户端发送给Servlet的请求以及对Servlet返回给客户端的响应做一些定制化的处理,例如校验请......