对于列表数据可能需要根据字段进行过滤,我们可以通过添加django-fitlter扩展来增强支持。
pip install django-filter
在配置文件中增加过滤后端的设置:
INSTALLED_APPS =[
···
'django_filters',# 需要注册应用,
]
REST_FRAMEWORK ={
'DEFAULT_FILTER_BACKENDS':('django_filters.rest_framework.DjangoFilterBackend',)
}
在视图中添加filter_fields属性,指定可以过滤的字段
class BookListView(ListAPIView):
queryset = BookInfo.objects,all()
serializer_class = BookInfoSerializer
filter_fields =('btitle','bread')
# 127.0.0.1:8000/books/?btitle=西游记