views:
# 导包排序的包
from rest_framework.filters import OrderingFilter
# 导包过滤的包
from django_filters.rest_framework import DjangoFilterBackend
from django_filters.rest_framework import DjangoFilterBackend
from rest_framework.pagination import PageNumberPagination
from rest_framework.viewsets import ModelViewSet
class StandardPageNumberPagination(PageNumberPagination):
page_size_query_param = 'page_num'
max_page_size = 3
class UserModelViewSet(ModelViewSet):
queryset = User.objects.all()
serializer_class = UserSer
pagination_class = StandardPageNumberPagination
filter_backends = (OrderingFilter, DjangoFilterBackend)
filter_fields = ['name', 'age', "sex"]
ordering_fields = ('age')
serializers:
class UserSer(serializers.ModelSerializer):
class Meta:
model = User
fields = "__all__" # 序列化的时候显示哪些字段
depth = 1 # 外键的序列化