过滤模块

安装
>: pip install django-filter
注册应用:settings/dev.py
INSTALLED_APPS = [
# 列表过滤模块
'django_filters',
]

条件过滤

视图函数:course/views.py
from django_filters.rest_framework import DjangoFilterBackend
class CourseAPIView(ListAPIView):
"""课程列表接口"""
queryset = Course.objects.filter(is_delete=False, is_show=True).order_by("-orders")
serializer_class = CourseSerializer
# 条件过滤:DjangoFilterBackend
filter_backends = [DjangoFilterBackend]
# 过滤字段
filter_fields = ['course_category', ]
接口
http://127.0.0.1:8000/course/?course_category=1

排序过滤

视图函数:course/views.py
from rest_framework.filters import OrderingFilter
from .pagination import CoursePageNumberPagination
class CourseAPIView(ListAPIView):
"""课程列表接口"""
queryset = Course.objects.filter(is_delete=False, is_show=True).order_by("-orders")
serializer_class = CourseSerializer
# 排序过滤:OrderingFilter
filter_backends = [OrderingFilter]
# 过滤字段
ordering_fields = ['id', 'students', 'price']
接口
http://127.0.0.1:8000/course/?ordering=price
http://127.0.0.1:8000/course/?ordering=-price

最新文章

  1. PHP易混淆函数的区分方法及意义
  2. python _、__和__xx__的区别
  3. ThinkPHP的RBAC原理分析
  4. 用Qemu模拟vexpress-a9 (四) --- u-boot引导kernel,用nfs挂载根文件系统
  5. 边工作边刷题:70天一遍leetcode: day 82
  6. codeforces343A A. Rational Resistance
  7. (六)6.12 Neurons Networks from self-taught learning to deep network
  8. docker(4):coreos+docker+rancher真厉害
  9. 第二百四十一天 how can I 坚持
  10. devexpress中用ChartControl生成柱状图
  11. Lucene.Net 2.3.1开发介绍 —— 二、分词(五)
  12. C# 制作Windows服务安装包
  13. Spring+SpringMVC+MyBatis+easyUI整合基础篇(一)项目简介
  14. update and的坑
  15. pytesseract使用
  16. 软AP的实现------dhcpserver交叉编译
  17. CEPH s3 java sdk PUT对象并在同一个PUT请求中同时设置ACL为 Public
  18. 免费IPv6访问收费IPv4,校园网免流量
  19. 【druid 】数据库连接池-sql解析
  20. solr 7.7.0配置中文分词器的数据类型

热门文章

  1. Swift4.0复习操作符方法与操作符的定制
  2. webpack 4 教程
  3. 常见问题:Web/Servlet生命周期与Spring Bean生命周期
  4. Echarts 不能百分比显示或显示有问题
  5. MySQL基础操作(二)
  6. Python程序计算ax^2+bx+c=0方程根
  7. dede5.7-修改自定义表单
  8. OpenCV学习笔记5
  9. 机器学习之逻辑回归(Logistic)笔记
  10. 接口中的方法都自动的被设置为public,接口中的域被自动设置为public static final