1. 程式人生 > >Django處理一個請求的過程

Django處理一個請求的過程

lsp height 示例 img tro http border borde blog

一、Django處理一個請求的過程

技術分享

Django處理一個請求的過程如下:

  1. Django使用的是根URLconif模塊,這個值通常通過ROOT_URLCONF設置:url到視圖函數的映射關系(在.../settings.py文件中)

    技術分享

  2. Django加載URLconf模塊(urls.py),並尋找可用的urlpatterns,匹配規則參考二
  3. Django依次匹配每個URL模式,在與請求的URL匹配的第一個模式處停下來
  4. 一旦其中一個正則表達式匹配上,則Django將請求指向對應的視圖函數處理
  5. 如果沒有匹配到,則過程中拋出一個異常,則Django將調用一個適當的錯誤處理視圖

二、正則表達式匹配

urls.py文件示例如下:

技術分享

             r‘^index/$‘
匹配符 含義
r 字符串前面加"r"是為了防止字符串中出現類似“\t”字符串時被轉義
^ 匹配字符串的開頭;在多行模式中匹配每一行的開頭,如^abc匹配的abcdd
$ 匹配字符串末尾;在多行模式中匹配每一行末尾,如abc$,匹配的efgabc

Django處理一個請求的過程