熟悉django-rest-framework
- 安装:
pip install djangorestframework
- 在Django项目中注册django-rest-framework
- 在
urls.py
中注册log-in/log-out视图, 如不添加, 则在Browsable API中无登录功能 - 麻雀的五脏:
- Serializer
- View
- URLS
Filters
get_queryset
方法可以写出更详细的queryset
1
2
3class HREmployee(generics.ListAPIView):
def get_queryset(self):
return Employee.objects.filter(department="Human Resources")get_queryset
中可以使用self.request
,self.args
,self.kwargs
等参数;通过
filter_backends
和filter_fields
可以通过url来筛选结果;1
2
3
4class Employees(generics.ListAPIView):
queryset = Employee.objects.all()
filter_backends = (filter.DjangoFilterBackend, )
filter_fields = ("department", "role", )可以通过
django_filters.rest_framework.FilterSet
来定义Filter, 再用在第三种方法的filter_backends
里