整理django 知識點

1. 列舉Http請求中常見的請求方式?

GETpython

向特定的路徑資源發出請求,數據暴露在url中
POST數據庫

向指定路徑資源提交數據進行處理請求(通常用於上傳表單或者文件),數據包含在請求體中
OPTIONS瀏覽器

返回服務器針對特定資源所支持的HTTP請求方法,容許客戶端查看、測試服務器性能
HEAD安全

向服務器與GET請求相一致的響應,響應體不會返回,能夠沒必要傳輸整個響應內容
PUT服務器

從客戶端向服務器傳送的數據取代指定的文檔的內容
DELETE網絡

請求服務器刪除指定的頁面
TRACEapp

回顯服務器收到的請求,主要用於測試或診斷
CONNECTide

2. http協議和https協議有什麼區別?

HTTPS和HTTP的區別主要以下:函數

  一、https協議須要到ca申請證書,通常免費證書較少,於是須要必定費用。post

  二、http是超文本傳輸協議,信息是明文傳輸,https則是具備安全性的ssl加密傳輸協議。

  三、http和https使用的是徹底不一樣的鏈接方式,用的端口也不同,前者是80,後者是443。

  四、http的鏈接很簡單,是無狀態的;HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,比http協議安全。

3. 簡述Django請求生命週期(很是重要)

  1. 當用戶在瀏覽器中輸入url時,瀏覽器會生成請求頭和請求體發給服務端
    請求頭和請求體中會包含瀏覽器的動做(action),這個動做一般爲get或者post,體如今url之中.

  2. url通過Django中的wsgi,再通過Django的中間件,最後url到過路由映射表,在路由中一條一條進行匹配,
    一旦其中一條匹配成功就執行對應的視圖函數,後面的路由就再也不繼續匹配了.
  3. 視圖函數根據客戶端的請求查詢相應的數據.返回給Django,而後Django把客戶端想要的數據作爲一個字符串返回給客戶端.
  4. 客戶端瀏覽器接收到返回的數據,通過渲染後顯示給用戶

    4. 簡述什麼是FBV和CBV

    一個url對應一個視圖函數,這個模式叫作FBV(Function Base Views)

除了FBV之處,Django中還有另一種模式叫作CBV(Class Base views),即一個url對應一個類

例子:使用cbv模式來請求網頁

5. 命令migrate 和makemigrations的差異

在你改動了 model.py的內容以後執行下面的命令:

Python manger.py makemigrations

至關於 在該app下創建 migrations目錄,並記錄下你全部的關於modes.py的改動,好比0001_initial.py, 可是這個改動尚未做用到數據庫文件

你能夠手動打開這個文件,看看裏面是什麼

在此以後執行命令

python manager.py migrate

將該改動做用到數據庫文件,好比產生table之類

當makemigrations以後產生了0001_initial.py 文件,你能夠查看下該migrations會對應於什麼樣子的SQL命令

相關文章
相關標籤/搜索