天天看點

url配置說明

一 、URL常用的配置包含兩個函數一個是path函數另一個是include函數。

  a. 函數 path()具有四個參數,兩個必須參數:<code>route</code>和<code>view</code>,兩個可選參數:<code>kwargs</code>和<code>name</code>。

    1. route:是一個比對 URL 的準則,不會比對 GET 和 POST 參數或域名。

    2. view: 視圖函數。即當 Django 找到了一個比對的準則,就會調用這個特定的視圖函數。

    3. name:路由的名稱。 取名URL可以在 Django 的任意地方唯一地引用它,尤其是在模闆中。

    4. kwargs:<code></code><code>其他參數。任意個關鍵字參數可以作為一個字典傳遞給目标視圖函數</code><code>。</code>

  b. 函數include()具有兩個參數,參數:module 和 參數:namespace。

    它接收一個完整的Python的導入路徑到另一個應該被“包含”在這裡的URL配置子產品,即把所有子產品下url整合到一起,常用在子產品化開發。

    注意:<code>admin.site.urls</code>是唯一例外。

    a. module:URLconf子產品(或子產品名稱)

    b. namespace:命名空間。

 說明:(Django使用根 URLconf檔案) Django根目url(根URLconf檔案)配置指定位置是(在setting.py檔案中)ROOT_URLCONF = 'mysite.urls',而子產品化開發用到url配置,需要到創         建URLconf檔案中處理。

URLconf建立(直白說是在建立的應用中添加一個url.py檔案,并在其中配置url準則):

1、在新建立的應用(hello)目錄中添加url.py檔案,并在hello/url.py中輸入.

url配置說明

 2、要在根URLconf檔案中指定我們建立的子產品hello.url,在 <code>mysite/urls.py</code>檔案的<code>urlpatterns</code>清單裡插入一個<code>include().</code>

url配置說明

二 、URL比對模式分為三種:固定的url、指定參數類型、使用正規表達式。

url配置說明

注意:

1、要從 URL 中取值,使用尖括号。

2、每個模式要求 URL 以一個斜線結尾,否則不比對任何模式。例如 :<code>world/2021(錯誤模式)。 </code>  

3、使用正規表達式,請使用re_path()而不是path()。

 4、正則表式比對模式可以使系統變的更快。

更加詳細配置說明請參考:https://docs.djangoproject.com/zh-hans/3.2/topics/http/urls/