django知识回顾
622字约2分钟
前后端分离开发模式
前后端分离前:前端页面看到的效果都是由后端控制,即后端渲染HTML页面,前端与后端的耦合度很高。
前后端分离前存在的问题:
PC、APP、Pad等多端流行
前后端开发职责不清晰:各司其职,最大程度减少开发难度,方便协作
开发效率问题,一般后端开发需先等前端页面准备好,有时前端也一直配 合后端,能力受限
前后端代码混在一起,日积月累,维护成本增加
后端开发语言和模板耦合
前后端分离后:后端仅返回前端所需要的数据,不再渲染HTML页面,不再 控制前端的效果,至于前端展示什么效果,都由前端自己决定。
认识RestFulAPI
什么是RestfulAPI:
REST(Representational State Transfer,表征状态转移)是一种Web服务的软件架构风格。 描述网络中客户端与服务端的一种交互方式,它本身不常用,常用的是如何设计RestfulAPI (REST风格的网络接口)
RestfulAPI风格就是把所有的数据都当做资源,对表的操作就是对资源操作
资源就是指的URL,基于URL对资源操作,Web服务在URL上支持一系列请求方法,如下表所 示。
示例:
非REST的URL:http://ip/get_user?id=123
REST的URL:http://ip/user/123
回顾Django开发模式
Django REST Framework初探
Django REST framework (简称:DRF)是一个强大而灵活的Web API 工具。 遵循RESTFullAPI风格,功能完善,可快速开发API平台。
官网文档:https:// www.django-rest-framework.org
Django REST framework 最新版使用要求:
Python(3.6、3.7、3.8、3.9、3.10)
Django(2.2、3.0、3.1、3.2、4.0)
安装:
pip install djangorestframework
添加rest_framework到INSTALLED_APPS设置中:
INSTALLED_APPS = [
...
'rest_framework',
]
示例:实现用户增删改查
步骤:
一、创建APP
python manage.py startapp myapp_api
二、定义数据模型并同步数据库
python manage.py makemigrations
python manage.py migrate
三、编写序列化器文件
myapp_api/serializers.py
四、编写视图
五、添加API路由
devops/urls.py
myapp_api/urls.py
上图是访问/myapp_api/api/地址获得。
这是DRF自带的API调试系统,结果显示自动注册路由的API 地址,可通过这个地址完成用户信息数据的增删改查:
增、查:http://127.0.0.1:8000/myapp_api/api/user/
删、改:http://127.0.0.1:8000/myapp_api/api/user/2/