測試開發進階(二十一)
- 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 #連接埠 } }