Django中URLconf和include()的協(xié)同工作方法
捕獲的參數(shù)如何和include()協(xié)同工作
一個(gè)被包含的URLconf接收任何來(lái)自parent URLconfs的被捕獲的參數(shù),比如:
# root urls.py
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^(?P<username>\w+)/blog/', include('foo.urls.blog')),
)
# foo/urls/blog.py
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^$', 'foo.views.blog_index'),
(r'^archive/$', 'foo.views.blog_archive'),
)
在這個(gè)例子中,被捕獲的 username 變量將傳遞給被包含的 URLconf,進(jìn)而傳遞給那個(gè)URLconf中的 每一個(gè) 視圖函數(shù)。
注意,這個(gè)被捕獲的參數(shù) 總是 傳遞到被包含的URLconf中的 每一 行,不管那些行對(duì)應(yīng)的視圖是否需要這些參數(shù)。 因此,這個(gè)技術(shù)只有在你確實(shí)需要那個(gè)被傳遞的參數(shù)的時(shí)候才顯得有用。
額外的URLconf如何和include()協(xié)同工作
相似的,你可以傳遞額外的URLconf選項(xiàng)到 include() , 就像你可以通過(guò)字典傳遞額外的URLconf選項(xiàng)到普通的視圖。 當(dāng)你這樣做的時(shí)候,被包含URLconf的 每一 行都會(huì)收到那些額外的參數(shù)。
比如,下面的兩個(gè)URLconf在功能上是相等的。
第一個(gè):
# urls.py
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^blog/', include('inner'), {'blogid': 3}),
)
# inner.py
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^archive/$', 'mysite.views.archive'),
(r'^about/$', 'mysite.views.about'),
(r'^rss/$', 'mysite.views.rss'),
)
第二個(gè)
# urls.py
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^blog/', include('inner')),
)
# inner.py
from django.conf.urls.defaults import *
urlpatterns = patterns('',
(r'^archive/$', 'mysite.views.archive', {'blogid': 3}),
(r'^about/$', 'mysite.views.about', {'blogid': 3}),
(r'^rss/$', 'mysite.views.rss', {'blogid': 3}),
)
這個(gè)例子和前面關(guān)于被捕獲的參數(shù)一樣(在上一節(jié)就解釋過(guò)這一點(diǎn)),額外的選項(xiàng)將 總是 被傳遞到被包含的URLconf中的 每一 行,不管那一行對(duì)應(yīng)的視圖是否確實(shí)作為有效參數(shù)接收這些選項(xiàng),因此,這個(gè)技術(shù)只有在你確實(shí)需要那個(gè)被傳遞的額外參數(shù)的時(shí)候才顯得有用。 因?yàn)檫@個(gè)原因,這種技術(shù)僅當(dāng)你確信在涉及到的接受到額外你給出的選項(xiàng)的每個(gè)URLconf時(shí)有用的才奏效。
相關(guān)文章
簡(jiǎn)單的抓取淘寶圖片的Python爬蟲(chóng)
這篇文章主要介紹了簡(jiǎn)單的抓取淘寶圖片的Python爬蟲(chóng),方法比較簡(jiǎn)單,推薦給小伙伴們參考下。2014-12-12
python通過(guò)函數(shù)屬性實(shí)現(xiàn)全局變量的方法
這篇文章主要介紹了python通過(guò)函數(shù)屬性實(shí)現(xiàn)全局變量的方法,實(shí)例分析了Python中函數(shù)屬性的相關(guān)使用技巧,需要的朋友可以參考下2015-05-05
Python UnicodeEncodeError: ''gbk'' codec can''t encode chara
這篇文章主要介紹了Python UnicodeEncodeError: 'gbk' codec can't encode character 解決方法,需要的朋友可以參考下2015-04-04
python如何導(dǎo)出微信公眾號(hào)文章方法詳解
這篇文章主要介紹了python如何導(dǎo)出微信公眾號(hào)文章方法詳解,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
淺析python 動(dòng)態(tài)庫(kù)m.so.1.0錯(cuò)誤問(wèn)題
這篇文章主要介紹了python 動(dòng)態(tài)庫(kù)m.so.1.0錯(cuò)誤問(wèn)題,文中給大家提到了python中使用動(dòng)態(tài)庫(kù)的方法,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05
用Python寫(xiě)飛機(jī)大戰(zhàn)游戲之pygame入門(mén)(4):獲取鼠標(biāo)的位置及運(yùn)動(dòng)
這篇文章主要介紹了用Python寫(xiě)飛機(jī)大戰(zhàn)游戲之pygame入門(mén)(4):獲取鼠標(biāo)的位置及運(yùn)動(dòng),需要的朋友可以參考下2015-11-11
python實(shí)現(xiàn)輸入的數(shù)據(jù)在地圖上生成熱力圖效果
今天小編就為大家分享一篇python實(shí)現(xiàn)輸入的數(shù)據(jù)在地圖上生成熱力圖效果,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-12-12
python selenium實(shí)現(xiàn)智聯(lián)招聘數(shù)據(jù)爬取
這篇文章主要介紹了python selenium實(shí)現(xiàn)智聯(lián)招聘數(shù)據(jù)爬取,需要的朋友可以參考下2021-04-04

