測試開發進階(二十一)

  • 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.pyurlpatterns中添加

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)

步驟

  • 配置資料庫連接資訊
  1. 創建資料庫和用戶
  2. 配置資料庫
  3. 安裝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 #連接埠      }  }