在urls.py檔案中,在進行url對映時,為請求的url命個名,以便在模板頁面或者views.py檢視中可以進行反向解析,同時在修改了url對映的請求路徑,名稱不變的情況下,不再修改模板頁面或者檢視中的資料,專案不受影響正常執行!
url標籤中使用模板變數
和普通標籤引數一樣,空格隔開,}即可。
url(r'^url_reverse/', views.url_reverse,name="view_reverse"),url(r'^login/', views.login,name="logining"),
url_reverse.html
1doctype html
>
2<
html
lang
="en"
>
3<
head
>
4<
meta
charset
="utf-8"
>
5<
title
>頁面url反向解析
title
>
6head
>
7<
body
>
8<
h1><
a href
="">登入
a>
h1>
9通過url反向解析名稱"loging",直接獲取到urls.py模組中與之對應的url路徑"login/"#}
10body
>
11html
>
login.html
1doctype html
>
2<
html
lang
="en"
>
3<
head
>
4<
meta
charset
="utf-8"
>
5<
title
>login
title
>
6head
>
7<
body
>
8<
form
action
=""method
="post"
>
9
10<
table
>
11<
tr>
12<
td>使用者名稱:
td>
13<
td><
input
type
="text"
name
="username"
>
td>
14tr
>
15<
tr>
16<
td>密碼:
td>
17<
td><
input
type
="text"
name
="userpsd"
>
td>
18tr
>
19<
tr>
20<
td><
input
type
="reset"
>
td>
21<
td><
input
type
="submit"
>
td>
22tr
>
23table
>
24form
>
25body
>
26html
>
27
views.py
檢視中url
反向解析:
17#呼叫reverse()方法,引數為urls.py中的url名稱,進行反向解析拿到"url_reverse/"
1819
#return redirect("view_reverse") #redirect自帶了url反向解析,可以不用重複呼叫reverse(),直接引用名稱
url標籤使用模板變數引數:
urls.py:
url(r'^update/book_id=([0-9]+)', views.update,
name
="update"),
views.py
returnrender(request,"update.html", )
html:
<formaction=""method="post">
Django之URL反向解析
在反向解析和命名空間之前我們先來說說urls硬編碼,用django 開發應用的時候,可以完全是在urls.py 中硬編碼配置位址,在views.py中httpresponseredirect 也是硬編碼轉向位址,當然在template 中也是一樣了,這樣帶來乙個問題,如果在urls.py 中修改了某...
django之url反向解析
在django中需要url 的地方,對於不同層級,django 提供不同的工具用於url 反查 1 在模板中 使用url 模板標籤。2 在python 中 使用 django.core.urlresolvers.reverse 函式。mydjango db.sqlite3 manage.py myd...
django的url反向解析
就是django會用你設定的url捕獲規則 正規表示式 去反向生成乙個url,生成的這個url仍然能滿足你設定的規則,比如設定如下捕獲規則 1 urlpatterns 2 re path r dynamic w w d views.dynamic,name dynamic 3 在模板檔案中用如下模板...