从「接口测试平台」专栏《08 接口测试平台 项目管理模块开发(一)》开始进行接口开发,可以看到使用Django REST Framework(下面简称DRF)只需要简单的几行代码就完成了6个restful风格接口的开发,这篇文章就带大家搞清楚DRF是如何做到的?文章有点长,含部分源码解析,可以收藏后再看哦~
截图为下面👇代码实现的6个接口。
class ProjectsViewSet(ModelViewSet):
queryset = Projects.objects.filter()
serializer_class = ProjectsSerializer

不使用DRF如何开发接口?
首先来看下如果不使用DRF,仅使用Django,完成这六个接口,一般情况需要6个方法来完成,然后根据不同的功能需要编写不同的逻辑。篇幅有限,方法中的具体业务逻辑就不一一实现了。
def list(request):
pass
def create(request):
pass
def detail(request,project_id):
pass
def delete(request,project_id):
pass
def update(request,project_id):
pass
def update_partial(request,project_id):
pass
上面分成6个方法的写法,需要定义6个不同的路由,分别指向不同的方法,如果要优化,可以根据RESTful风格接口的接口定义,可以只提供一个方法,根据请求方式不同进行判断,这样只需要定义两个路由,一个路由的路径不带参数,一个路径带参数。
def project(request,project_id):
if request.method == "GET":
pass
if request.method == "PUT":
pass
if request.method == "PATCH":
pass
if request<

本文介绍了如何使用Django REST Framework(DRF)快速开发RESTful风格的接口,对比了不使用DRF时的接口开发方式,并详细解析了ModelViewSet、GenericViewSet等关键组件的实现逻辑,展示了DRF如何简化接口开发工作。
1750

被折叠的 条评论
为什么被折叠?



