“Drf的搜索和排序”的版本间的差异
来自CloudWiki
(创建页面,内容为“https://www.django-rest-framework.org/api-guide/filtering/#searchfilter ==搜索== goods.views.py: <nowiki> from .serializers import GoodsSerializer from rest_fr…”) |
|||
第43行: | 第43行: | ||
</nowiki> | </nowiki> | ||
+ | |||
+ | 测试: | ||
+ | |||
+ | [[文件:bd20-5-67.png|600px]] |
2020年8月2日 (日) 10:09的版本
https://www.django-rest-framework.org/api-guide/filtering/#searchfilter
搜索
goods.views.py:
from .serializers import GoodsSerializer from rest_framework.response import Response from rest_framework import mixins from rest_framework import generics from rest_framework import filters from rest_framework.pagination import PageNumberPagination from django_filters.rest_framework import DjangoFilterBackend from rest_framework import viewsets from .models import Goods from .filters import GoodsFilter # Create your views here. class GoodsPagination(PageNumberPagination): page_size = 12 page_size_query_param = 'page_size' page_query_param = "page" max_page_size = 100 class GoodsListViewSet(mixins.ListModelMixin, viewsets.GenericViewSet): """ 商品列表页, 分页, 搜索, 过滤, 排序 """ queryset = Goods.objects.all() serializer_class = GoodsSerializer pagination_class = GoodsPagination filter_backends = (DjangoFilterBackend,filters.SearchFilter) filter_class = GoodsFilter search_fields = ('name', 'goods_brief', 'goods_desc')
测试: