django 路由系統

2022-06-19 16:27:11 字數 2118 閱讀 2365

1. 正規表示式的模糊匹配

2. 分組匹配 --> 相當於給檢視函式傳遞位置引數

3. 分組命名匹配 --> 相當於給檢視函式傳遞關鍵字引數

(兩個不要混合使用) 

位置傳參

路由

url(r'^book1/([0-9])/([a-za-z])/$', views.book1),

接收# 位置引數

def book1(request, arg1, arg2):

print("arg1:", arg1)

print("arg2:", arg2)

return httpresponse("傳參成功~")

關鍵字傳參

路由

url(r'^book2/(?p[0-9])/(?p[a-za-z])/$', views.book2),

接收# 關鍵字引數

def book2(request, year, title):

print("year:", year, type(year))

print("title:", title)

return httpresponse("傳參成功~")

別名和命名空間

模板使用

命名空間:別名

張:點我

路由

優先找命名空間,再找別名,

命名空間

別名url(r'^home1/', views.home, , name="home"),

檢視中使用

路由

路由

別名# url(r'^book/([0-9])/([a-za-z])/$', views.book, name="book"),

# 關鍵字引數

url(r'^book/(?p[0-9])/(?p[a-za-z])/$', views.book, name="book")

檢視

def home(request, age):

print(age)

# 傳位置引數

# redirect_url = reverse("car:book", args=(2018, "sb"))

from django.urls import reverse

# 傳關鍵字引數

redirect_url = reverse("car:book", kwargs=)

print(redirect_url)

# return redirect(redirect_url)

return render(request, "test/home.html")

預設路由補充/配置

# 缺省會在url後面加上 '/',然後再去urls.py裡面匹配對應關係

2. 路由系統(urls.py)  

1. 正規表示式的模糊匹配

2. 分組匹配 -->相當於給檢視函式傳遞位置引數

3. 分組命名匹配 -->相當於給檢視函式傳遞關鍵字引數

(兩個不要混合使用)

---------------------------- 這裡是坎 ------------------------------------

4. 反向解析url

本質上就是給url匹配模式起別名,然後用過別名拿到具體的url路徑

1. 怎麼起別名?

在url匹配模式中,定義name="別名"

2. 如何使用?

1. 在模板語言裡面使用:

-->得到具體的url路徑

2. 在檢視中如何使用:

from django.urls import

reverse

reverse("別名

") -->得到具體的url路徑

3. 如何傳引數?

1. 模板語言中:

2. 檢視函式中

傳位置引數:

reverse("別名

", args=(2018, "nb"

))

傳關鍵字引數:

reverse("別名

" kwargs=)

4. namespace

Django路由系統

urlpatterns path 要匹配的路徑 可以是正規表示式 檢視函式,引數,別名 1 正規表示式 乙個正規表示式字串 2 檢視函式 乙個可呼叫物件,通常為乙個檢視函式或乙個指定檢視函式路徑的字串 3 引數 要傳遞給檢視函式的預設引數 字典形式,可選 4 別名 乙個可選的name引數 1 在py...

Django路由系統

普通的url 函式 有傳遞引數的url django2以上版本,使用正規則要用re path,之前的版本使用url re path add w add 一樣功能 path add add re path r add2 p w p d add path add2 add2 路由分發 使用include...

Django路由系統

基本格式 from django.conf.urls import urlurlpatterns url 正規表示式,views檢視函式,引數,別名 引數說明 正規表示式 乙個正規表示式字串 views檢視函式 乙個可呼叫物件,通常為乙個檢視函式或乙個指定檢視函式路徑的字串 引數 可選的,要傳遞給檢...