首页 > 其他分享 >过滤组件的使用

过滤组件的使用

时间:2022-12-10 11:34:07浏览次数:43  
标签:rest django filter 过滤 DjangoFilterBackend 使用 组件 import

过滤Filtering

对于列表数据可能需要根据字段进行过滤,我们可以通过添加django-filter扩展来增强支持

pip install django-filter

在配置文件中添加过滤后端的设置

INSTALLED_APPS=[
    'django_filter',#需要注册应用
]

#全局配置,也可以局部配置
REST_FRAMEWORK = {
	'DEFAULT_FILTER_BACKENDS': ['django_filters.rest_framework.DjangoFilterBackend'],
}


在视图类中添加 filterset_fields类属性,指定可以过滤的字段

from rest_framework.generics import ListAPIView
from app01.models import Book
from django_filters.rest_framework import DjangoFilterBackend

class BookView(ListAPIView):
    queryset = Book.objects.all()
    serializer_class = BookSerializer
    filter_backends = [DjangoFilterBackend]  # 在视图中加上该类,就可以
    filterset_fields = ('name','price')   #配置按照哪个字段来过滤
    
    
#http://127.0.0.1:8000/books/?price=40
#http://127.0.0.1:8000/books/?name=活着

标签:rest,django,filter,过滤,DjangoFilterBackend,使用,组件,import
From: https://www.cnblogs.com/zaosong/p/16971302.html

相关文章

  • 排序组件的使用
    排序在类视图中设置filter_backends属性,使用rest_framework.filters.OrderingFilter过滤器,DRF会在请求的查询字符串参数中检查是否包含了ordering参数,如果包含了ordering......
  • 方法引用基础使用
    packagecom.Lucky.Function;importjava.util.Arrays;importjava.util.Comparator;importjava.util.stream.Collector;/*方法引用:将已经存在的方法进行引用......
  • Velero 系列文章(二):使用 Helm 安装 Velero
    概述本文是通过Helm3来安装Velero,只做最基本的安装。并计划将YAML(只备份YAML,不备份Volume)备份到腾讯云的COS(兼容S3,所以可以通过AWSS3插件来实现)需要......
  • PostgreSQL 使用数组类型及mybatis操作数组类型
    为啥要用到数组类型呢?因为​​ES支持数组类型​​,为了迁移遍历,所以也支持数组类型。selectdocid,authorsfromsearch_doc_new_icwhereauthors@>'{"惠普"}'limit1......
  • Stream流之其他使用
    数组:packagecom.Lucky;importjava.util.*;/*数组的Stream流:使用Arrays工具类*/publicclassStreamArray{publicstaticvoidmain(String[]args)......
  • Qt QScroller::grabGesture(ui->scrollArea, QScroller::TouchGesture),之后滚动条无法
    RT。问题发生原因因为设置了touchGesture,而scrollArea的滚动条是包含在scrollArea里面的,用手指滑动滚动条的同时,也触发了touchGesture,两个冲突了。 解决思路:重新n......
  • Stream【数据流】的基本使用
    Stream:数据流中间方法:filter【过滤】limit【获取前几个数据】skip【跳过前几个数据】distinct【去重】concat【合并】map【......
  • 2022 ximalaya download 喜马拉雅音频批量下载器使用教程
    教大家怎么使用ximalayadownload这款软件下载喜马拉雅上的音乐批量下载到自己的电脑上。使用方法很简单,首先下载这款软件。ximalaydownload音乐批量下载器这款软件的强......
  • for循环的使用与学习
    在Linux中使用BashFor循环你会嘛!原创 入门小站 入门小站 2022-12-0921:50 发表于湖北收录于合集#Linux645个入门小站分享运维技巧及10k+Stars的开......
  • Velero 系列文章(二):使用 Helm 安装 Velero
    概述本文是通过Helm3来安装Velero,只做最基本的安装。并计划将YAML(只备份YAML,不备份Volume)备份到腾讯云的COS(兼容S3,所以可以通过AWSS3插件来实现)需......