国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

在Django框架中偽造捕捉到的URLconf值的方法

2019-11-25 17:10:01
字體:
供稿:網(wǎng)友

比如說你有匹配某個(gè)模式的一堆視圖,以及一個(gè)并不匹配這個(gè)模式但視圖邏輯是一樣的URL。 這種情況下,你可以通過向同一個(gè)視圖傳遞額外URLconf參數(shù)來偽造URL值的捕捉。

例如,你可能有一個(gè)顯示某一個(gè)特定日子的某些數(shù)據(jù)的應(yīng)用,URL類似這樣的:

/mydata/jan/01//mydata/jan/02//mydata/jan/03/# .../mydata/dec/30//mydata/dec/31/

這太簡(jiǎn)單了,你可以在一個(gè)URLconf中捕捉這些值,像這樣(使用命名組的方法):

urlpatterns = patterns('',  (r'^mydata/(?P<month>/w{3})/(?P<day>/d/d)/$', views.my_view),)

然后視圖函數(shù)的原型看起來會(huì)是:

def my_view(request, month, day):  # ....

這種解決方案很直接,沒有用到什么你沒見過的技術(shù)。 當(dāng)你想添加另外一個(gè)使用 my_view 視圖但不包含month和/或者day的URL時(shí),問題就出現(xiàn)了。

比如你可能會(huì)想增加這樣一個(gè)URL, /mydata/birthday/ , 這個(gè)URL等價(jià)于 /mydata/jan/06/ 。這時(shí)你可以這樣利用額外URLconf參數(shù):

urlpatterns = patterns('',  (r'^mydata/birthday/$', views.my_view, {'month': 'jan', 'day': '06'}),  (r'^mydata/(?P<month>/w{3})/(?P<day>/d/d)/$', views.my_view),)

在這里最帥的地方莫過于你根本不用改變你的視圖函數(shù)。 視圖函數(shù)只會(huì)關(guān)心它 獲得 了 參數(shù),它不會(huì)去管這些參數(shù)到底是捕捉回來的還是被額外提供的。month和day

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 洪江市| 庆阳市| 仙桃市| 门头沟区| 民丰县| 高平市| 郑州市| 三原县| 黄龙县| 平罗县| 萨嘎县| 靖安县| 安西县| 马公市| 淮南市| 高安市| 外汇| 武鸣县| 丽江市| 渝中区| 南澳县| 竹山县| 屏山县| 巴彦县| 同德县| 鲁山县| 陆川县| 怀来县| 林甸县| 兴国县| 平武县| 三原县| 金溪县| 七台河市| 河北省| 三穗县| 河曲县| 乐陵市| 平顶山市| 阜平县| 吉水县|