DRF的搜索和排序
Posted mxsf
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DRF的搜索和排序相关的知识,希望对你有一定的参考价值。
一、搜索
class GoodsListViewSet(mixins.ListModelMixin,viewsets.GenericViewSet): ‘商品列表页‘ #这里必须要定义一个默认的排序,否则会报错 queryset = Goods.objects.all().order_by(‘id‘) # 分页 pagination_class = GoodsPagination serializer_class = GoodsSerializer filter_backends = (DjangoFilterBackend,filters.SearchFilter) # 设置filter的类为我们自定义的类 filter_class = GoodsFilter #搜索,=name表示精确搜索,也可以使用各种正则表达式 search_fields = (‘=name‘,‘goods_brief‘)
二、排序
class GoodsListViewSet(mixins.ListModelMixin,viewsets.GenericViewSet): ‘商品列表页‘ #这里必须要定义一个默认的排序,否则会报错 queryset = Goods.objects.all() # 分页 pagination_class = GoodsPagination #序列化 serializer_class = GoodsSerializer filter_backends = (DjangoFilterBackend,filters.SearchFilter,filters.OrderingFilter) # 设置filter的类为我们自定义的类 #过滤 filter_class = GoodsFilter #搜索,=name表示精确搜索,也可以使用各种正则表达式 search_fields = (‘=name‘,‘goods_brief‘) #排序 ordering_fields = (‘sold_num‘, ‘add_time‘)
以上是关于DRF的搜索和排序的主要内容,如果未能解决你的问题,请参考以下文章
自定义类签发校验token-实现多方式登录-自定义反爬类-admin后台表管理字段自定义-群查接口-搜索-排序-分页
LeetCode810. 黑板异或游戏/455. 分发饼干/剑指Offer 53 - I. 在排序数组中查找数字 I/53 - II. 0~n-1中缺失的数字/54. 二叉搜索树的第k大节点(代码片段