CRUD视图扩展类

1  CreateModelMixin

2  RetrieveModelMixin

3  UpdateModelMixin

4  DestroyModelMixin

<1> 创建扩展类

 

CreateModelMixin 提供create(request, *args, **kwargs) 这个方法 实现了创建、保存一个新mode实例的功能。 如果成功返回 201Created 如果请求不可用返回 400 Bad Request 扩展视图类-CreateAPIView 只作为创建资源用,提供了一个post方法

 

<2>查询扩展类

 

RetrieveModelMixin 提供retrieve(request, *args, **kwargs) 这个方法 实现了返回一个model实例 如果成功就返回200 OK 如果失败 就返回404 视图扩展类-RetrieveAPIView 只获取单个model实例操作,提供了get方法

 

<3>更新扩展类

UpdateModelMixin 提供update(request, *args, **kwargs) 实现更新、保存model实例的功能 提供partial_update(request, *args, **kwargs) 部分更新,支持PATCH请求。 如果成功就返回200 OK 如果失败 就返回404 视图扩展类 -UpdateAPIView 只对单个model做更新操作,提供了put、patch两个方法

 

<4>删除扩展类

 

DestroyModelMixin 提供destroy(request, *args, **kwargs) 实现删除一个model实例的功能 删除成功 返回 204 删除失败 返回 404 视图扩展类-DestroyAPIView 只做删除单个model实例操作 提供了delete 方法

 

接下来讲个例子 操作一番

<1> 如第二篇例子      

<一>:<1>创建项目:    

配置 urls 主路由     配置setting文件导入INSTALLED_APPS=''rest_framework',

配置model文件(举个例子,就以book为模型)

当完成这步时  进行数据的 ''迁移''   然后 '执行'  操作

数据迁移完后 创建sers(序列化文件 名字随意起)  并基础配置

django-rest-framework框架 第三篇 之CRUD视图扩展类(增删改查的优化)

再配置views   并且导入ModelViewSet   

django-rest-framework框架 第三篇 之CRUD视图扩展类(增删改查的优化)

此时为什么导入ModelViewSet   (是因为ModelViewSet 中有 增删 改查的方法 )  

 django-rest-framework框架 第三篇 之CRUD视图扩展类(增删改查的优化)

接下来需要配置 子路由  

django-rest-framework框架 第三篇 之CRUD视图扩展类(增删改查的优化)

当完成这个操作  基本上就 是完结了

然后启动服务器  python manage.py runserver

django-rest-framework框架 第三篇 之CRUD视图扩展类(增删改查的优化)

完毕  续更...