建设项目自主验收网站,全国货运信息网配货,值得浏览的国外网站,网站编辑做啥都一、drf框架特点#xff1a;
全称 Django REST framework 两大部分#xff1a;序列化/反序列化 和 增删改查序列化#xff1a;把数据库数据提取出来变成python常用格式的过程#xff0c;例如转成json格式这种反序列化#xff1a;把数据写入到数据库的过程#xff0c…一、drf框架特点
全称 Django REST framework 两大部分序列化/反序列化 和 增删改查序列化把数据库数据提取出来变成python常用格式的过程例如转成json格式这种反序列化把数据写入到数据库的过程例如转成str这种也就是去掉特殊的格式的意思增加 校验请求数据 - 执行反序列化过程 - 保存数据库 - 将保存的对象序列化并返回 删除判断要删除的数据是否存在 - 执行数据库删除编辑判断要修改的数据是否存在 - 校验请求的数据 - 执行反序列化过程 - 保存数据库 - 将保存的对象序列化并返回查询查询数据库 - 将数据序列化并返回
序列化/反序列化Serializer 方法 提供了很多牛逼的方法
二、drf框架使用
下载安装pip3 install djangorestframework -i https://pypi.douban.com/simple配置下载后在Django框架中的settings文件的INSTALLED_APPS中增加‘rest_framework’应用 创建序列化器文件serializers.py最好是在自己的应用下创建该文件如我的是myapp目录并在文件中输入如下内容
from rest_framework import serializers
from myapp.models import *class DB_CASE_Serializer(serializers.ModelSerializer):class Meta:model DB_CASE # model.py中的具体的表名fields __all__ # 代表该表的所有字段都遵循drf规则
回到views.py中新建该表的视图函数
from rest_framework.viewsets import ModelViewSet
from myapp.serializers import *class DB_CASE_ViewSet(ModelViewSet):queryset DB_CASE.objects.all() # 查询集serializer_class DB_CASE_Serializer #序列号器
去urls.py中设置自动路由
from rest_framework.routers import DefaultRouterrouter DefaultRouter() # 可以处理视图的路由器
router.register(rdb_case, DB_CASE_ViewSet) # 向路由器中注册视图集db_case就是具体的路由DB_CASE_ViewSet是view.py中的视图函数后续想增加新的路由只需要复制这一行改下路由和视图函数就行
urlpatterns router.urls # 将路由器中的路由信息追到到django的路由列表中
三、drf框架调试
启动项目的Django服务浏览器上输入127.0.0.1:8000/db_case这个路由就是刚刚上面设置的那个接口路由 可以看到调试的页面 返回体格式符合预期底部post请求可以添加新的数据
进入路由 /db_case/1 可以访问具体单一的数据底部输入字段触发put请求可以修改该条数据内容具体数据点击delete按钮可以删除 至此drf自动搭建完成后续可以通过以下请求方式进行增删改查
查全部 /db_case 前端用GET方法请求
查单独/db_case/${具体id}前端用GET方法请求
修改 /db_case/${具体id} 前端用PUT方法请求
新增 /db_case 前端用POST方法请求
删除 /db_case/${具体id} 前端用DELETE方法请求