测试开发进阶(二十一)
- 2019 年 10 月 8 日
- 筆記
开发模式
前后端不分离
- 后端需要控制数据的展示
- 前后端耦合比较高
- 多终端复用性差
- 任务区分不明显
前后端分离
- 当前主流
- 后端只对数据进行处理,只提供数据
- 前端效率,页面由前端负责
- 解耦和
- 前后端同时开始开发,缩小业务上线周期
接收参数
url传参
访问:http://127.0.0.1:8000/index?a=1&b=2
调试代码


request.GET
返回一个类字典的内容- 查询字符串参数,如果有多个相同的key,使用
request.GET.get('xxx')
获取的是最后一个值 - 使用
request.GET.getlist('xxx')
可以获取到多个相同key值的参数
访问:http://127.0.0.1:8000/index/?a=1&b=2&a=3



form表单
使用 Postman
发起请求

调试代码


与 GET
类似
request.POST.get('a') # '3' request.POST.getlist('a') # ['1','3']


json格式
使用 postman
发送json格式


转化为python内容,使用 json
模块的 loads

import json r_dict = json.loads(request.body.decode())
url路径参数
在 projects/urls.py
的 urlpatterns
中添加
path('<int:pk>/', views.IndexView.as_view()),
int
为路径参数类型转换器
:
左边被转换器,右边为参数别名
- int
- slug
- uuid
class IndexView(View): def get(self, request, pk): return render(request, 'demo.html')
访问:http://127.0.0.1:8000/index/100/

返回Json
# projects/views.py from django.http import JsonResponse class IndexView(View): def get(self, request): data = { 'name': 'zx', 'age': 25, } return JsonResponse(data)

ORM框架
定义
- 把类和数据表进行映射
- 通过类和对象就能操作它所对应表格中的数据「增删改查」(CRUD)
步骤
- 配置数据库连接信息
- 创建数据库和用户
- 配置数据库
- 安装mysqlclient
- 在models.py中定义模型类
- 迁移
- 通过类和对象操作完成数据库增删改查操作
使用 Navicat
连接 mysql
后创建一个数据库

新建一个用户

修改权限

需要使用专业版!

点击 Downloadmissing driver files
安装数据库连接软件


安装连接库

修改 LearnDjango/settings.py
配置
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 指定引擎 'NAME': 'my_django', # databases名 'USER': 'my_django', # 数据库用户名 'PASSWORD': '123456', #数据库密码 'HOST': 'localhost', # 主机IP 'PORT': 3306 #连接端口 } }