Django 筆記 URL 分發原理

2021-09-04 02:41:48 字數 1815 閱讀 4921

做了2個頁面,覺得大致了解了引數和頁面如何傳遞了,我們來看下原理。

乙個http請求傳送到

django會第一時間去找setting檔案的setting.py

當訪問 url /hello/ 時,django 根據 root_urlconf 的設定裝載 urlconf 。 然後按順序逐個匹配urlconf裡

的urlpatterns,直到找到乙個匹配的。 當找到這個匹配 的urlpatterns就呼叫相關聯的view函式,並把

httprequest 物件作為第乙個引數。 (稍後再給出 httprequest 的更多資訊) (我們將在後面看到

httprequest的標準)

正如我們在第乙個檢視例子裡面看到的,乙個檢視功能必須返回乙個httpresponse。 一旦做完,django將完

成剩餘的轉換python的物件到乙個合適的帶有http頭和body的web response,(例如,網頁內容)。

總結一下:

1. 進來的請求轉入/hello/.

2. django通過在root_urlconf配置來決定根urlconf.

3. django在urlconf中的所有url模式中,查詢第乙個匹配/hello/的條目。

4. 如果找到匹配,將呼叫相應的檢視函式

5. 檢視函式返回乙個httpresponse

6. django轉換httpresponse為乙個適合的http response, 以web page顯示出來

當乙個動態檢視生成的時候,例如

import datetime

now = datetime.datetime.now()

nowdatetime.datetime(2016, 12, 13, 14, 9, 39, 2731)

>>> print now

201626 14:09:39.002731

其實這些都是python的**,django並沒有去解釋任何**。

)生成日期的

請求經過

url轉向

view

,生成結果後返回前台

url分發(二級分發)

註明一下,是當做乙個引數傳到views裡面 執行結果 delete 2 return action dic def get url print 執行這個get url的部分 print admin.site.registry tem print 拿到全部的表的名字 model name 這個是一級分...

Django 路由分發

django 路由分發 當乙個url請求過來之後 1 先到專案主目錄下的urls內。一級路由 主目錄urls內引入include from django.conf.urls import url,include urlpatterns url r cmdb include url r monitor...

Django路由分發

1.路由匹配,urls.py中 url r testadd views.testadd 匹配規則 從上到下只要正規表示式匹配成功,就不會往下匹配了 get請求的傳參方式?無名分組 url r test d views.test 會把括號中匹配的數字當成位置引數傳給檢視函式 有名分組 url r te...